社区
C#
帖子详情
如何设置datagrid 单元格颜色?
bennylee0618
2005-08-11 10:38:07
datagrid中有如下数据
姓名 性别 年龄
S 男 20
A 女 22
B 女 30
要求将年龄大于等30的格子以黄色背景显示,性别为男的数据行以蓝色字体显示,请问应该怎么做啊?
谢谢了
...全文
366
7
打赏
收藏
如何设置datagrid 单元格颜色?
datagrid中有如下数据 姓名 性别 年龄 S 男 20 A 女 22 B 女 30 要求将年龄大于等30的格子以黄色背景显示,性别为男的数据行以蓝色字体显示,请问应该怎么做啊? 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cdo
2005-08-11
打赏
举报
回复
http://www.syncfusion.com/FAQ/WindowsForms/FAQ_c44c.aspx#q745q
KingSeaMountain
2005-08-11
打赏
举报
回复
建议使用第三方控件,绝对划算
cuike519
2005-08-11
打赏
举报
回复
//在Item_DataBind里面判断并实现即可。
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) {
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){
if(e.Item.Cells[1].Text == "男")
e.Item.ForeColor = Color.FromName("blue");
int xxx = Int32.Parse(e.Item.Cells[2].Text==""||e.Item.Cells[2]==null?"0":e.Item.Cells[2].Text);
if(xxx > 30)
e.Item.BackColor = Color.FromName("yellow");
}
}
bennylee0618
2005-08-11
打赏
举报
回复
注:是winForm,不是webForm,好像不能用ItemDataBound事件
ufrshchenw
2005-08-11
打赏
举报
回复
这边有个例子你可以自己看看怎么实现的
http://www.syncfusion.com/FAQ/WindowsForms/FAQ_c44c.aspx#q745q
stonegoldaustin
2005-08-11
打赏
举报
回复
//为事件建立委托.
public delegate void CellColorEventHandler(object sender, DataGridCellColorEventArgs e);
public class DataGridCellColorTextBoxColumn : DataGridTextBoxColumn
{
public event CellColorEventHandler CheckCellColor;
public DataGridCellColorTextBoxColumn()
{
}
//继承DataGridTextBoxColumn的Pain事件.
protected override void Paint(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, System.Windows.Forms.CurrencyManager source, int rowNum, System.Drawing.Brush backBrush, System.Drawing.Brush foreBrush, bool alignToRight)
{
if(CheckCellColor != null)
{
//重绘画时,设置当前行的背景色
DataGridCellColorEventArgs e = new DataGridCellColorEventArgs(rowNum, Color.White);
CheckCellColor(this, e);
if(e.BackColor != Color.White)
backBrush = new SolidBrush(e.BackColor);
}
base.Paint(g, bounds, source, rowNum, backBrush, foreBrush, alignToRight);
}
protected override void Edit(System.Windows.Forms.CurrencyManager source, int rowNum, System.Drawing.Rectangle bounds, bool readOnly, string instantText, bool cellIsVisible)
{
base.Edit(source, rowNum, bounds, readOnly, instantText, cellIsVisible);
}
}
int numCols = cls_SQL.m_dst.Tables["m_CurrentStorage"].Columns.Count;
DataGridCellColorTextBoxColumn columnTextColumn ;
for(int i = 0; i < numCols; ++i)
{
columnTextColumn = new DataGridCellColorTextBoxColumn();
columnTextColumn.HeaderText = cls_SQL.m_dst.Tables["m_CurrentStorage"].Columns[i].ColumnName;
columnTextColumn.MappingName = cls_SQL.m_dst.Tables["m_CurrentStorage"].Columns[i].ColumnName;
//为每个单元格建立设置背景色的事件.
columnTextColumn.CheckCellColor += new CellColorEventHandler(SetColorValues);
tableStyle.GridColumnStyles.Add(columnTextColumn);
}
//新增改变颜色
public void SetColorValues(object sender, DataGridCellColorEventArgs e)
{
//根据条件, 将相关行设置不同的背景色.
if(Convert.ToInt32(dg_CurrentStorage[e.Row,7]) <= 10)
e.BackColor = Color.Red;
else
e.BackColor = Color.White;
}
TechEye
2005-08-11
打赏
举报
回复
用UltraGrid
wpf
datagrid
单元格
颜色
根据条件改变
颜色
例子
本篇文章将详细讲解如何在WPF中实现
DataGrid
单元格
颜色
根据条件改变。 首先,我们需要了解WPF
DataGrid
的基础知识。
DataGrid
通常通过绑定到数据源(如ObservableCollection或ICollectionView)来显示数据。每个...
wpf
datagrid
单元格
颜色
根据datatable动态显示
datagrid
内容
掌握这些技术,你就能在WPF应用程序中创建出既美观又功能丰富的数据展示界面,根据业务逻辑动态调整
DataGrid
的
单元格
颜色
,提升用户体验。在实际项目中,可以根据具体需求进行扩展,例如添加更多的DataTriggers,...
wpf中
datagrid
动态
设置
单元格
背景
通过以上步骤,我们就能实现`wpf`中`
DataGrid
`动态
设置
单元格
背景
颜色
的功能。这不仅提高了界面的可读性,还能更好地传达数据的含义。在实际开发中,可以根据具体需求调整
颜色
转换器的逻辑,比如增加更多的
颜色
条件...
DataGrid
的
单元格
背景和文字
颜色
总结来说,通过上述方法,我们可以根据需求灵活地控制
DataGrid
单元格
的背景和文字
颜色
,实现数据的可视化增强。无论是在简单的
颜色
调整还是复杂的条件判断上,WPF都提供了丰富的工具来帮助开发者创建出具有高度定制...
wpf
datagrid
根据datatable动态显示
单元格
颜色
要实现根据DataTable中数据动态改变
单元格
颜色
的功能,我们需要对
DataGrid
的样式进行定制。WPF中定制
DataGrid
的方式很多,最直接的一种是通过修改
DataGrid
的ItemContainerStyle来自定义行的样式,或者修改...
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章