c# winform中如何实现如下功能

pgdoryoku 2008-06-09 08:55:33
如何在c# winform中实现这样的功能?
当我在datagridview中选中一个内容时,该选中单元格对应的整行底色变为蓝色,而对应选中的那个单个单元格内容,背景色为白色.此时,我如果按键盘的ctrl+c可以实现复制该选中的单个单元格的内容.

谢谢.
...全文
101 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
glutton 2008-06-09
  • 打赏
  • 举报
回复
1,你可以设置标计量,比如bool isChecked,单击前为false,根据这个去判断用什么样式
2,看看帮助吧,应该有属性和方法可以做到的

用的不熟,帮你顶顶
strivechou 2008-06-09
  • 打赏
  • 举报
回复
学习
pgdoryoku 2008-06-09
  • 打赏
  • 举报
回复
谢谢楼上,我把datagridview的属性改为SelectionMode改为了CellSelect,暂时解决了可以复制单个选中单元格的问题.
然后我在datagridview_CellClick事件中写了以下代码(暂时解决了选择行时改变颜色风格的问题):
   datagridview.CurrentRow.DefaultCellStyle.BackColor = Color.DarkBlue;
datagridview.CurrentRow.DefaultCellStyle.ForeColor = Color.White;
datagridview.CurrentRow.DefaultCellStyle.SelectionBackColor = Color.White;
datagridview.CurrentRow.DefaultCellStyle.SelectionForeColor = Color.Black;


现在还有几个问题,实在想不出来,虚心请教下大大们,先谢了:
1、如何在每次_CellClick事件之前,把那些事先有更改过风格的行还原到之前没更改时的样式?
2、如何在每次开始页面之前datagridview,任何数据都不选中,因为我设置了属性改为SelectionMode改为了CellSelect,这样虽然解决了可以复制单个单元格的问题,但是这样每次打开这个datagridview页面的时候它都自动给你选择,第一行第一列数据,而不是选中整行的,不太好看。

谢谢大家了。
SuperTyro 2008-06-09
  • 打赏
  • 举报
回复
ctrl+c 应该是 winforms 成可以做到的吧?

你可以添加 一个 获得焦点的事件 在事件里 判断 选中单元个的行数 然后设计行的样式 把背景设计 成 你想要的颜色
然后再是失去焦点事件 将样式恢复就可以做到了

我是小菜鸟! 说的不好清见谅, 希望能够帮到你!

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧