使用的ultraGrid的数据源为List
对行操作
1.通过对数据源的查找获取下标然后对每一行的数据进行颜色或属性的设置
int i = 0;
foreach (var item in druglstview)
{
i = druglstview.FindIndex(i, MatchState);
if (i == -1)
{
return;
}
if (i >= druglstview.Count)
{
return;
}
else
{
this.ultraGridDrug.Rows[i].Appearance.BackColor = Color.LightBlue;
this.ultraGridDrug.Rows[i++].Appearance.ForeColor = System.Drawing.ColorTranslator.FromHtml("#0000ff"); // Color.Red;
}
}
//匹配条件
private bool MatchState(V_YDYL_EXECDRUG_View drug)
{
if (drug.drug_name.Length > 10)
{ return true; }
else
{
return false;
}
}
注意: 必须要求数据List和绑定后的所有行的顺序是一致的
2.通过对绑定后的数据表进行遍历操作,进行相应的属性设置
2.1 先通过一定的规则进行排序
// this.ultraGridDrug.SetDataBinding(druglstview, "", true);
this.ultraGridDrug.DataSource = druglstview;
ultraGridDrug.DisplayLayout.Bands[0].Columns["USE_TIME"].SortIndicator = SortIndicator.Descending;
ultraGridDrug.DisplayLayout.Bands[0].Columns["COMB_NO"].SortIndicator = SortIndicator.Descending;//.Descending;
2.2通过对绑定后的数据进行遍历操作进行属性的设置
for (int i = 0; i < this.ultraGridDrug.Rows.Count; i++)
{
if (this.ultraGridDrug.Rows[i].Cells["COMB_NO"].Value.ToString() == "4761431")
{
this.ultraGridDrug.Rows[i].Appearance.BackColor = Color.LightBlue;
this.ultraGridDrug.Rows[i].Appearance.ForeColor = System.Drawing.ColorTranslator.FromHtml("#0000ff"); // Color.Red;
}
if (this.ultraGridDrug.Rows[i].Cells["COMB_NO"].Value.ToString() == "4761426")
{
this.ultraGridDrug.Rows[i].Appearance.BackColor = Color.Red;
this.ultraGridDrug.Rows[i].Appearance.ForeColor = System.Drawing.ColorTranslator.FromHtml("#0000ff"); // Color.Red;
}
}