Wpf 从代码隐藏到XAML
我在.cs文件中有下面的C#代码,我想把它移到XAML中。 代码包括名为:OperationConverte的属性Wpf 从代码隐藏到XAML,wpf,silverlight,Wpf,Silverlight,我在.cs文件中有下面的C#代码,我想把它移到XAML中。 代码包括名为:OperationConverte的属性 Binding binding1 = new Binding("DisplayNames") { Source = OperationConverter, }; ComboBox4.SetBinding(ComboBox.ItemsSourceProperty, binding1); Binding binding2 =
Binding binding1 = new Binding("DisplayNames")
{
Source = OperationConverter,
};
ComboBox4.SetBinding(ComboBox.ItemsSourceProperty, binding1);
Binding binding2 = new Binding("Operation")
{
Mode = BindingMode.TwoWay,
Converter = (OperationConverter as IValueConverter)
};
ComboBox4.SetBinding(ComboBox.SelectedValueProperty, binding2);
所以我所做的是:
<ComboBox Name="ComboBox4" MinWidth="100" ItemsSource="{Binding Path=OperationConverter.DisplayNames}"
SelectedValue="{Binding Path=Operation, Mode=TwoWay,
Converter={?????DONT KNOW WHAT TO DO HERE????}}" Margin="30,123,83,148" />
但是我不知道如何连接OperationConverter有多种方法,但标准做法是将转换器的实例声明为资源并引用它
<Window.Resources>
<local:OperationConverter x:Key="MyConverter" />
</Window.Resources>
您当前公开转换器的方式最好是完全不实现IValueConverter,而是公开OperationConverter对象的转换值并直接绑定到该属性。对不起,我不理解:“从OperationConverter对象公开转换后的值并直接绑定到该属性。”
SelectedValue="{Binding Path=Operation, Mode=TwoWay, Converter={StaticResource MyConverter}}"