我希望能够根据行中的布尔同步属性禁用Ultragrid中的某些行。我想到了两种不同的解决方案,但都没有成功。
1)将同步属性数据绑定到行的激活属性上。这是否可行?
2)在网格的InitializeRow事件等事件中查找同步属性,并在其设置为true时禁用该行。此方法有效,但如果添加了更多行并保存了网格,则数据会重新排序,因此禁用的行不包含正确的数据。因此,我需要一种知道发生这种情况的方法,以便之后可以再次禁用正确的行。
1)将同步属性数据绑定到行的激活属性上。这是否可行?
2)在网格的InitializeRow事件等事件中查找同步属性,并在其设置为true时禁用该行。此方法有效,但如果添加了更多行并保存了网格,则数据会重新排序,因此禁用的行不包含正确的数据。因此,我需要一种知道发生这种情况的方法,以便之后可以再次禁用正确的行。
private void ultraGrid1_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e)
{
e.Row.Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
if (e.Row.Cells[grdBoundGrip.DisplayLayout.Bands[0].Columns["Sync"]].Value != null && (bool)e.Row.Cells[grdBoundGrip.DisplayLayout.Bands[0].Columns["Sync"]].Value)
e.Row.Activation = Infragistics.Win.UltraWinGrid.Activation.Disabled;
}