我有两个ComboBox
ComboBox1和ComboBox2,我想在ComboBox1 SelectedItem
更改时执行ComboBox2转换器,如何在XAML中完成。
到目前为止,我对于ComboBox2具有此XAML:
ItemsSource="{Binding MyItems, Converter={StaticResource MYConverter}, ConverterParameter= {Binding ElementName=comboBox1, Path=SelectedItem,Mode=TwoWay}}"
答案 0 :(得分:2)
仅当更改绑定值时才重新评估绑定,而不更改转换器参数,因此,请假设:
SelectedItem1
属性绑定到ComboBox1
s SelectedItem
属性。
SelectedItem2
属性绑定到ComboBox2
的{{1}}属性。
SelectedItem
的{{1}}属性绑定到ViewModel上的名为ComboBox2
的属性:
只要更改ItemSource
,就应该为MyItems
引发SelectedItem1
事件。这样,重新评估绑定并执行转换器。
P.S:请在以后提供有关您的问题的更多背景信息,例如您的ViewModel是什么样的。
答案 1 :(得分:0)
在后面的代码中,您可以创建如下代码:
comboBox1.SelectionChanged += new SelectionChangedEventHandler(comboBox1SelectionChanged);
它将生成一个事件处理程序,该事件处理程序将由委托调用,该处理程序应如下所示:
void comboBox1SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//Your logic here
}
别忘了:
u
sing System.Windows;
using System.Windows.Controls;