我遇到了行外观的问题。基本上,我在InitilizeLayout中为BackColor添加了两个外观,另一个用于Forecolor,并在InitilizeRow中使用了Backcolor外观。它一直运作良好。
但是当我在某些特定行上使用forecolor外观时,单击一个按钮,它会改变网格所有行的前景色。
我正在使用以下代码:
InitializeLayout代码:
lRowColorAppereance = e.Layout.Appearances.Add("GridBackColor")
lRowColorAppereance.BackColor = Color.LightGray
lRowColorAppereance.FontData.Bold = DefaultableBoolean.True
lIsMasterDBAppereance = e.Layout.Appearances.Add("IsMasterDB")
lIsMasterDBAppereance.ForeColor = Color.DarkGreen
InitializeRow代码:
e.Row.Appearance = grdData.DisplayLayout.Appearances("GridBackColor")
现在,当我使用以下代码将第0行的Forecolor更改为lIsMasterDBAppereance.ForeColor或Color.DarkGreen时单击按钮,它会将所有行的Forecolor更改为DarkGreen。
按钮点击事件代码:
lugrAddedRow.Appearance.ForeColor = grdData.DisplayLayout.Appearances("IsMasterDB").ForeColor
OR
lugrAddedRow.Appearance.ForeColor = Color.DarkGreen
但我不想改变所有行的前景色,我只需要更改某些特定行的前景色。
请你建议如果我错过了什么。