C# WPF禁用数据网格单元
我想根据从数据库返回的程序禁用[只读]一个C# WPF禁用数据网格单元,c#,wpf,C#,Wpf,我想根据从数据库返回的程序禁用[只读]一个DataGridCell。我正在使用以下代码,但它不起作用 <DataGridTextColumn Width="SizeToCells" x:Name="amountColumn" Header="Amount" Binding="{Binding Amount}" MinWidth="100" > <DataGridTextColumn.CellStyle> <Style TargetTyp
DataGridCell
。我正在使用以下代码,但它不起作用
<DataGridTextColumn Width="SizeToCells" x:Name="amountColumn" Header="Amount" Binding="{Binding Amount}" MinWidth="100" >
<DataGridTextColumn.CellStyle>
<Style TargetType="DataGridCell">
<Style.Triggers>
<DataTrigger Binding="{Binding RoleName}" Value="Payment Authoriser" >
<Setter Property="Background" Value="#DDA0DC" />
<Setter Property="ToolTip" Value="Please Add Amount" />
</DataTrigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.CellStyle>
</DataGridTextColumn>
<Setter Property="DedableThisCell" Value="Please DesableMe" />
GridCell
只有当RoleName=“Payment Maker”
其他任何东西用于RoleName
时才是可写的,它将是只读的。您尝试过类似的方法吗
<DataTrigger Binding="{Binding RoleName}" Value="Payment Maker" >
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
您好,我想保留RoleName=“Payment Maker”而不是TrueFalse@user3624511禁用整个数据网格
,您能成功吗?你能试试DataGrid
上的IsEnabled=false
,看看单元格是否由DataTrigger
启用吗?我做过类似的事情 ! 好方法@user3624511我同意最好将代码编写为“if PaymentMaker,然后enable,else disable”,因为它将默认操作视为“disable”,而不是“enable”。如何设置默认的iEnabled?依赖项属性优先级可能会阻止触发器运行,具体取决于它所在的位置