MultiDataTrigger.Conditionsをラジオボタンにバインドしたいのに機能しません。ここに私のシナリオです。参照でバインドするソースが見つかりません
私はGridPanelを持っています。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>
:ここ
が私のコードである「参照して結合するためのソースを見つけることができません」、との条件は第二の条件はfalseを返す(がelementName = allAccountsBtn)どうしてですか?
動的に名前が付けられ、生成されたRadioButtonからIsCheckedプロパティを取得する方法はありますか。
xamlにラジオボタンを追加すると、それが検出される可能性があります。そのため、問題が発生した場合、ElementNameは動的に生成されたコントロールを見つけることができません。 – VHanded