我有一个网格控件,其中有些列是可编辑的,有些列是不可编辑的。
我希望有更好的控制,以便根据MyData**,的其他字段,将启用或不启用相应的单元格。
<dxg:GridControl ItemsSource="{Binding MyData}" AutoPopulateColumns="True">
<dxg:GridControl.Columns>
<dxg:GridColumn Header="Name" ReadOnly="True"/>
<dxg:GridColumn Header="ID 1" ReadOnly="False"/>
<dxg:GridColumn Header="ID 2" ReadOnly="False"/>
<dxg:GridColumn Header="ID 3" ReadOnly="False"/>
</dxg:GridControl.Columns>
</dxg:GridControl>还无法在DevExpress支持站点上找到任何内容。你能知道吗?
谢谢!
发布于 2014-10-01 06:43:26
您可以通过处理ShowingEditor事件来完成此任务。如果不应该编辑单元格,可以将e.Cancel设置为True:
void TableView_ShowingEditor(object sender, DevExpress.Xpf.Grid.ShowingEditorEventArgs e)
{
if(...)
{
e.Cancel = true;
}
}您还可以通过XAML样式完成此任务:
<Style TargetType="dxg:CellContentPresenter" BasedOn="{StaticResource {dxgt:GridRowThemeKey ResourceKey=CellStyle}}">
<Setter Property="IsEnabled" Value="{Binding Path=RowData.Row.SomePropertyRelatedToEnabledState}"/>
</Style>https://stackoverflow.com/questions/26133882
复制相似问题