gpt4 book ai didi

wpf - 无法通过引用找到绑定(bind)源

转载 作者:行者123 更新时间:2023-12-01 02:52:31 27 4
gpt4 key购买 nike

我想将 MultiDataTrigger.Conditions 绑定(bind)到单选按钮,但它不起作用。这是我的场景。

在 wpf 中,我有一个 GridPanel,它假设有单选按钮。

我在 GridPanel 中生成动态单选按钮,如下所示:

RadioButton allAccountBtn = new RadioButton();
allAccountBtn.Name = "allAccountBtn";
GridPanel.Children.Add(allAccountBtn);

然后在我的 xaml 中,我有一个图像按钮,它将根据此单选按钮选择和另一个控件的属性进行更改。

这是我的代码:
<Button>
<Button.Template>
<ControlTemplate>
<Image Name="addFolderIcon" Source="Icon/Decoration/folderColor.png">
<ControlTemplate.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Tag, ElementName=folderBackBtn}" Value="{x:Null}"/>
<Condition Binding="{Binding IsChecked, ElementName=allAccountsBtn}" Value="True"/>
</MultiDataTrigger.Conditions>
<Setter Property="Control.IsEnabled" Value="False"/>
<Setter TargetName="addFolderIcon" Property="Source" Value="Icon/Decoration/folder.png"/>
</MultiDataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Template>
</Button>

当我运行程序时,它显示错误代码:“找不到与引用绑定(bind)的源”,并且条件返回 false 的第二个条件(elementName=allAccountsBtn)

为什么会这样?

我可以通过任何方式从动态命名和生成的 RadioButton 中引用获取 IsChecked 属性吗?

最佳答案

我注意到您正在设置 Name将动态生成的对象上的属性设置为“allAccountBtn”(单数“帐户”),但您的 XAML 的 ElementName正在引用“allAccountsBtn”(复数“Accounts”)。尝试将它们更改为相同。

关于wpf - 无法通过引用找到绑定(bind)源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4426950/

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