C# WIN窗体 datagridview中将显示成绩小于60的行显示为红色,之前问了,但是找不到RowDataBound事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# WIN窗体 datagridview中将显示成绩小于60的行显示为红色,之前问了,但是找不到RowDataBound事件相关的知识,希望对你有一定的参考价值。

参考技术A 简单方法就是遍历当前显示的内容,然后判断成绩字段值,符合条件则将该行背景色变红。对单页海量数据,这个方法感觉不太给力,最好是在给其绑定数据源时操作,这样就能一次生成,但还是可能要面对分页后翻时的绑定效率问题。先说这些,具体怎么弄,不算难,看看就会了。 参考技术B 没必要找到这个方法的,你添加一个判断,如果小于六十,则
dgvDetail.Rows[i].DefaultCellStyle.BackColor = Color.Red;这样不就ok了?本回答被提问者采纳
参考技术C ridView1_RowDataBound(object sender,
GridViewRowEventArgs e)

if (e.Row.RowType == DataControlRowType.DataRow)

int score= Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, “成绩”));
if (score < 60)
e.Row.BackColor = Color.Red;



本文来自CSDN博客,转载请标明出处:

c# winform datagridview首次加载默认显示的问题

网上找了很多,很多都是不能用的,无效的。
举几个不能实现效果的列子:
1.不给它焦点肯定是不行的
2.绑定值后再进行下列三项操作也是不行的
1).dataGridView1.CurrentCell=null;
2).dataGridView1.ClearSelection();
3).dataGridView1.Rows[0].Selected = false;
(我实际测试确实不能用)

现在可以用的只有下面这个方法
分别把上面的 1)·2)· 3)代码放到窗体的Load事件中,都行!!!!
像这样:要放置到窗体加载方法中
private void Form1_Load(object sender, EventArgs e)

dataGridView1.ClearSelection();


问题:还有没有别的方法可以首次加载datagridview默认不选中的?大力感谢

绑定datagridview后设置datagridview.selectedIndex=-1即可 参考技术A 默认选择也不会妨碍什么啊,你看excel一打开都是默认选择了一个单元格的。

以上是关于C# WIN窗体 datagridview中将显示成绩小于60的行显示为红色,之前问了,但是找不到RowDataBound事件的主要内容,如果未能解决你的问题,请参考以下文章

c#中 datagridview单击选中一行数据,点修改按钮,跳转到另外一个窗体并显示数据,修改保存

C# 窗体的DataGridView分页

如何在 Windows 窗体 C# 中单击按钮通过 DataGridView 更新数据库中的布尔字段

c# winform datagridview首次加载默认显示的问题

如何使用 C# 从 SQL Server 数据库中逐行将数据检索到 datagridview 中

C# Winform DataGridView 控件的基本使用