WPF条件绑定.Button.IsEnabled to SelectedIndex> = 0

Chr*_*eis 9 data-binding wpf xaml binding

我想将按钮IsEnabled属性绑定到类似的条件myObject.SelectedIndex >= 0.有没有一种简单的方法在xaml中执行此操作(不必对任何底层对象做疯狂的事情)?我还没有看到一个很好的例子.

老实说,我希望这就像Flex 3一样容易...... IE:

<mx:Button enabled="{dataGrid.SelectedIndex >= 0}" ...
Run Code Online (Sandbox Code Playgroud)

Mat*_*ton 16

如果没有选择,SelectedIndex是-1,对吧?反转您的逻辑并使用触发器:

<Button ...>
    <Button.Style>
        <Style TargetType="Button">
            <Setter Property="enabled" Value="True" />

            <Style.Triggers>
                <DataTrigger
                    Binding="{Binding SelectedIndex,ElementName=dataGrid}"
                    Value="-1">

                    <Setter Property="IsEnabled" Value="False" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    <Button.Style>
<Button>
Run Code Online (Sandbox Code Playgroud)