C# DataGridView 列自动排序时单元格背景色丢失

百度了下大家处理比较复杂

我是这么处理的,把设置颜色的代码写在RowPostPaint事件中,执行之前判断一下 当前行数,在最后一行时候执行,避免频繁设置颜色。

private void DGV_CW_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)

{

if (e.RowIndex == DGV_CW.RowCount-1)

set_cw_grid(); // 设置grid颜色

}

时间: 2025-01-12 02:59:41

C# DataGridView 列自动排序时单元格背景色丢失的相关文章

窗体DataGridView控件中按回车键时,单元格向下移动,如何能改成向右移动

方法一:protected override void OnKeyUp(System.Windows.Forms.KeyEventArgs e) { base.OnKeyUp(e); if (e.KeyCode == System.Windows.Forms.Keys.Enter) { e.Handled = true; System.Windows.Forms.SendKeys.Send("{TAB}"); } } protected override bool ProcessCmd

DataGridView获取或者设置当前单元格的内容

当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView对象的CurrentCell属性取得.如果当前单元格不存在的时候,返回null. 取得当前单元格的内容: object obj = this.dgv_PropDemo.CurrentCell.Value; 注:返回值是object类型的. 取得当前单元格的列Index: int columnIndex = this.dgv_PropDemo.CurrentCell.ColumnIndex; 取得当前单元格

Emeditor自动切换到单元格选择模式

Emeditor在使用CVS"制表分割"模式是会自动切换到"单元格选择模式". 解决方法: 工具--自定义 CSV--CSV选项,将"自动切换到单元格选择模式"前勾取消即可.

WPF DataGrid动态生成列的单元格背景色绑定

原文:WPF DataGrid动态生成列的单元格背景色绑定 <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=Column.DisplayIndex}" Value="1"> <Setter Property="Background" Value="{Binding RelativeSource={RelativeSour

C# Excel行高、列宽、合并单元格、单元格边框线、冻结

private _Workbook _workBook = null;private Worksheet _workSheet = null;private Excel.Application _excelApplicatin = null; _excelApplicatin = new Excel.Application();_excelApplicatin.Visible = true;_excelApplicatin.DisplayAlerts = true; _workBook = _e

【大坑】DataGridView多线程更新修改Cell单元格卡死

今天做个小工具,因为最近经常用到DataGridView,所以这次没有选择ListView.忙活了一个小时终于完工了,先运行看看吧.咦!!!!怎么卡死了.代码应该没问题呀,用的多线程也不会卡UI线程呀,打开分析工具查看DataGridView赋值Cell单元格占用CPU达到了80~90,公司的G3260不堪重负的挂掉了. BackgroundWorker解决问题 上园子里找答案,解决办法倒是找到了几种.但是都不靠谱,一样的卡死,看到博问里面说用BackgroundWorker试试.Backgro

交叉报表列头排序时遇到的oracle问题—oracle ORA-12704:字符集不匹配、varchar2转化为nvarchar2字符缺失、case when else后的字符类型要一致

在做交叉报表列头的排序时,遇到这三个问题,下面具体来说一下. 设计的数据库的表结构如图1所示: 图1 要处出来student_name_,s.grade_,s.subject_name_,这三个属性,当时我是这样写的sql语句: select  s.student_name_, s.grade_,  s.subject_name_, case  s.subject_name_ when  '语文' then 'A语文' when  '数学' then 'B数学' when  '英语' then 

DataGridView使用技巧十一:DataGridView用户输入时,单元格输入值的设定

通过DataGridView.CellParsing事件可以设定用户输入的值.下面的示例:当输入英文文本内容的时候,立即被改变为大写.DataGridView.CellParsing在离开编辑的单元格之后会被触发. 示例: 1 private void dgv_Users_CellParsing(object sender, DataGridViewCellParsingEventArgs e) 2 { 3 DataGridView dgv = sender as DataGridView; 4

DataGridView使用技巧十:单元格表示值的自定义

通过CellFormatting事件,可以自定义单元格的表示值.(比如:值为Error的时候,单元格被设定为红色) 示例: 1 private void dgv_Users_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) 2 { 3 try 4 { 5 if (e == null || e.Value == null || !(sender is DataGridView)) 6 return; 7 Dat