标签: recursive-databinding

XAML绑定到另一个元素的反面

我正在开发一个简单的练习,并想知道是否有一种方法只使用XAML绑定到另一个元素的反面.例如.我在表单上有两个按钮,Start和Stop可能是一个计时器.我不希望两者同时启用.程序启动时,应禁用停止按钮.单击开始按钮时,应禁用它并启用停止按钮.然后反之亦然,直到用户退出.

我知道有更好的控件,我知道在代码中很容易做到.我只是想知道XAML中是否存在某种类似于NOT的运算符:

<Button Content="_Start" Name="btnStart"/>
<Button Content="_Stop" Name="btnStop"
        IsEnabled="{Binding ElementName=btnStart,
                    Path=Not(IsEnabled)}"/>
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

                    Path != IsEnabled}"/>
Run Code Online (Sandbox Code Playgroud)

甚至是:

                    Path=IsEnabled.Not()}"/>
Run Code Online (Sandbox Code Playgroud)

我知道我可以直接绑定到开始按钮,但是当一个启用时,另一个启用按钮,同样禁用它时.看看我来自哪里.

我甚至愿意接受某种XAML Validation thehnique,它将首先检查启动按钮的状态并强制停止状态为相反.或任何其他不需要代码隐藏的类似黑客或变通办法.

感谢您的帮助.

编辑:记住关键点是没有代码.如果我必须编写一行代码,我可以使用onclick事件处理程序和一个简单的?:运算符.所以我只想要一些可以在XAML中直接使用的东西.

c# data-binding xaml recursive-databinding c#-4.0

11
推荐指数
1
解决办法
6246
查看次数

标签 统计

c# ×1

c#-4.0 ×1

data-binding ×1

recursive-databinding ×1

xaml ×1