我尝试IsEnabled
在上下文菜单项中绑定属性。上下文菜单位于 Devexpress 中GridControl.View
。
我认为问题出在 DataContext 中。barbutton 项正在网格的 DataContext 中搜索属性HasPermissionDelete
。但这不是视图模型的数据上下文。我的财产HasPermissionDelete
在 ViewModel 上。
我正在使用 caliburn.micro。
你能帮我修复这个绑定吗?
我的xml代码:
<dxg:GridControl.View>
<dxg:TableView x:Name="gridTable" AllowSorting="True" NavigationStyle="Row" MultiSelectMode="Row" AutoWidth="True" AllowEditing="False" AllowFilterEditor="True" AllowDrop="True" AllowGrouping="True" ShowGroupPanel="False" AllowMoveColumnToDropArea="True" SelectedRowsSource="{Binding SelectedUsers}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="RowDoubleClick">
<cal:ActionMessage MethodName="Edit" />
</i:EventTrigger>
<i:EventTrigger EventName="Loaded">
<cal:ActionMessage MethodName="InitializePrintableSource" >
<cal:Parameter Value="{Binding ElementName=gridTable}"></cal:Parameter>
</cal:ActionMessage>
</i:EventTrigger>
</i:Interaction.Triggers>
<dxg:TableView.RowCellMenuCustomizations>
<dxb:BarButtonItem x:Name="btnDelete" Content="{lex:LocText Translations:Delete, Assembly=Prosa.Common.Modules.UserManagement}" IsEnabled="{Binding Path=HasPermissionDelete}"/>
</dxg:TableView.RowCellMenuCustomizations>
</dxg:TableView>
</dxg:GridControl.View>