DataGridView颜色控制、循环添加多行生成空表并绑定
来源:互联网 发布:自攻螺丝 钻头 知乎 编辑:程序博客网 时间:2024/05/17 09:39
private void 颜色控制(DataGridView 控件名) { this.BeginInvoke(new Action(() => { for (int 行 = 0; 行 < 控件名.Rows.Count; 行 += 4) { 控件名.Rows[行].DefaultCellStyle.BackColor = Color.LightGreen; 控件名.Rows[行 + 3].DefaultCellStyle.BackColor = Color.LightPink; /*对数据更新按日期设置颜色,一星期内为红色Red,一星期后为Aqua/粉红Violet或蓝色Blue。*/ int 列 = 0; string[] 解析; DateTime 日期; do { string 单元格值 = 控件名.Rows[行 + 2].Cells[列].Value.ToString(); if (单元格值.Contains("★")) { 解析 = 数据解析(单元格值, "★"); if (DateTime.TryParse(解析[1], out 日期)) if (解析[0] != "") { 详情查编.Rows[行 + 2].Cells[列].Value = 解析[0]; 详情查编.Rows[行 + 2].Cells[列].ToolTipText = 解析[1]; int 日差 = (DateTime.Now - DateTime.Parse(解析[1])).Days; if (日差 <= 14) 详情查编.Rows[行 + 2].Cells[列].Style.ForeColor = Color.Violet; if (日差 > 14 && 日差 <= 28) 控件名.Rows[行 + 2].Cells[列].Style.ForeColor = Color.Red; if (日差 > 28 && 日差 <= 56) 控件名.Rows[行 + 2].Cells[列].Style.ForeColor = Color.Blue; } } } while (++列 < 控件名.ColumnCount); } })); }
循环添加多行生成空表并绑定
DataTable 空表 = new DataTable();for (int 序 = 0; 序 < 8; 序++) 空表.Columns.Add("总序:" + (序 + 1).ToString());空表.Rows.Add(72);DataGridView.DataSource = 空表;
VB
Sub 表格控件颜色控制(表格控件 As DataGridView, 参数 As Int16) Dim 行数 As Int16 = 表格控件.Rows.Count - 1 Do '表格控件.Rows(行数).DefaultCellStyle.BackColor = IIf(参数 = 行数 Mod 2, Color.AliceBlue, Color.Beige) 表格控件.Rows(行数).Cells(0).Style.BackColor = IIf(参数 = 行数 Mod 2, Color.AliceBlue, Color.Beige) '表格控件.Columns(行数).DefaultCellStyle.BackColor = IIf(参数 = 行数 Mod 2, Color.AliceBlue, Color.Beige) 行数 -= 1 Loop While (行数 >= 0) End Sub
Dim biaoge As DataGridView = New DataGridView biaoge.Parent = Me biaoge.Location = New Point(10, 46) biaoge.DataSource = 数据表 表格控件颜色控制(biaoge, 1)