如何将IsEnabled绑定到DataTemplate中按钮的xaml中vm的属性

本文关键字:按钮 vm 属性 xaml DataTemplate IsEnabled 绑定 | 更新日期: 2023-09-27 18:25:47

我的telerik:GridViewDataColumn.CellTemplate xaml中有一个带有DataTemplate的按钮。我想将xaml中的IsEnabled属性绑定到视图模型中的道具。我的道具在viewmodel中填充了正确的值,但在xaml中没有显示更改。如何做到这一点?

<telerik:GridViewDataColumn.CellTemplate>
      <DataTemplate>
             <Button Content="Edit"
                     VerticalAlignment="Center"
                     Command="{Binding RelativeSource={RelativeSource AncestorType={x:Type telerik:RadGridView }},Path=DataContext.SendDateCommand}"
                     CommandParameter="{Binding}" IsEnabled="{Binding IsSetSendDate,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"/>
      </DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>

如何将IsEnabled绑定到DataTemplate中按钮的xaml中vm的属性

首先,将IsEnabled的Mode更改为TwoWay应该会有所帮助。我还要检查以确保IsSetSendDate被声明为public,并且在您的类中有一个Getter和Setter。还要确保为xaml设置了DataContext,方法是使用<Window.Resources>标记声明,或者在xaml.cs构造函数中设置DataContext。