如何在xaml中编码此伪C#代码:
if (button.Content =="Select" && (checkBox1.IsChecked || checkBox2.IsChecked))
我曾尝试过将Style.Triggers与DataTrigger结合使用,并将MultiDataTrigger与Condition结合使用,但是没有一个能给我所需的组合。
答案 0 :(得分:0)
在WPF窗口/控件中没有看到要执行的操作,则很难回答。但是,在您的绑定上下文(MVVM,视图模型,控件对象)中,为什么不创建一个返回布尔值并对其进行测试的新属性
X.insert(k,h)
如果您可以提供更多要绑定的表格和模型,则可能会提供更多建议。同样,如果您的复选框具有绑定到控件的数据(无论它是什么),那么您将直接引用该类属性。同样,实现INotifyPropertyChanged可以帮助您打开或关闭所需的字段。我和其他人可以根据您提供的更多信息提供更多信息。
请编辑您的原始帖子,以提供更多控制对象以及一些示例XAML以查看大图。
答案 1 :(得分:0)
我喜欢给出DRapp的答案,最简单的方法是检查条件,这是最有意义的,但是我认为这是您正在尝试使用XAML
实现的。只要您将这些元素名称设置为与您的元素名称正确匹配,然后使用setter来应用您的条件,这应该可以工作。
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=button1, Path=Content}" Value="Select" />
<Condition Binding="{Binding ElementName=checkBox1, Path=IsChecked }" Value="True" />
</MultiDataTrigger.Conditions>
<Setter Property="SomeProperty" Value="SomeValue" />
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=button1, Path=Content}" Value="Select" />
<Condition Binding="{Binding ElementName=checkBox2, Path=IsChecked }" Value="True" />
</MultiDataTrigger.Conditions>
<Setter Property="SomeProperty" Value="SomeValue" />
</MultiDataTrigger>
</Style.Triggers>