gird.Caption = "測驗資料";
gird.FieldName = "m";
gird.VisibleIndex = 0;
gird.Width = 15;
this.gridView1.Columns.Add(gird);
GridFormatRule gfrid = new GridFormatRule { Name = "gfrid" };
gfrid.Column = gird;
gfrid.Rule = new FormatConditionRuleExpression()
{
PredefinedName = "Red Fill,Red Text",
Expression= "[m]>0",
};
this.gridView1.FormatRules.Add(gfrid);
上面是用代碼生成一行資料并添加規則 但是頁面沒有生效
在

在規則設定直接設定 也沒有生效
頁面效果如下

uj5u.com熱心網友回復:
沒發現啥問題
private void button3_Click(object sender, EventArgs e)
{
_lst.Add(new BillModel
{
amount = 1028,
name = "商品1",
price = 150,
qty = 3
});
_lst.Add(new BillModel
{
amount = 3028,
name = "商品2",
price = 110,
qty = 35
});
var formatExpress = new DevExpress.XtraEditors.FormatConditionRuleExpression();
var formatRule = new DevExpress.XtraGrid.GridFormatRule();
formatRule.ApplyToRow = true;
formatRule.Column = gridView1.Columns["amount"];
formatRule.Name = "t1500";
formatExpress.Appearance.BackColor = Color.LightGreen;
formatExpress.Appearance.BorderColor = Color.Red;
formatExpress.Expression = "[amount] > 1500";
formatRule.Rule = formatExpress;
gridView1.FormatRules.Add(formatRule);
gridView1.RefreshData();
}
public class BillModel
{
public string name { get; set; }
public int qty { get; set; }
public decimal price { get; set; }
public decimal amount { get; set; }
}
uj5u.com熱心網友回復:
問題我自己找到了,找了官方檔案.因為我頁面生成的時候自動添加了一行資料列添加了顏色.導致規則設定顏色的優先級降低了.沒有生效.要在Rule.options.highPriority=true 把優先級設定最高才能生效轉載請註明出處,本文鏈接:https://www.uj5u.com/net/131082.html
標籤:C#
