gpt4 book ai didi

c# - 基于 DataTrigger 更改 Button 的 Click 事件

转载 作者:行者123 更新时间:2023-11-30 22:49:56 25 4
gpt4 key购买 nike

我正在尝试在触发 DataTrigger 时更改 Button 的 Click 属性/事件,但我不确定这是否是最好的方法。事实上,它甚至不会编译 :)

我得到的是这样的:

<Style TargetType="{x:Type Button}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ObjectTreeView, Path=SelectedItem.Replaceable}" Value="False">
<Setter Property="Content" Value="Add" />
<Setter Property="Button.Click" Value="AddObject_Click" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=ObjectTreeView, Path=SelectedItem.Replaceable}" Value="True">
<Setter Property="Content" Value="Replace" />
<Setter Property="Button.Click" Value="ReplaceObject_Click" />
</DataTrigger>
</Style.Triggers>
</Style>

编译时给我一条错误消息,提示“无法在类型‘System.Windows.Controls.Button’上找到样式属性‘Click’”

有什么建议吗?如果这不可能,有什么替代方案?

谢谢!

编辑:

我以为我找到了使用 EventSetter 的解决方案,但触发器内部不支持 EventSetter。我认为会起作用的是:

<EventSetter Event="Button.Click" Handlder="AddObject_Click" />

但正如我所说,这是完全受支持的。

最佳答案

如果只有一个点击事件,并且在那个事件中,一个基于您的 DataTrigger 的 if 语句,会不会更容易?

关于c# - 基于 DataTrigger 更改 Button 的 Click 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/863990/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com