我想将字典绑定到CommandParameter的按钮。 这是我的XAML代码:WPF:在命令参数中绑定自定义依赖属性MultiBinding
<Button.CommandParameter>
<MultiBinding Converter="{StaticResource MyMultiValueConverter}">
<Binding>
<Binding.Source>
<system:String>SomeString</system:String>
</Binding.Source>
</Binding>
<Binding>
<Binding.Source>
<models:StringObjectPair Key="UserId" Value="{Binding User.Id, UpdateSourceTrigger=PropertyChanged}" />
</Binding.Source>
</Binding>
<Binding>
<Binding.Source>
<models:StringObjectPair Key="UserName" Value="{Binding User.Name, UpdateSourceTrigger=PropertyChanged}" />
</Binding.Source>
</Binding>
</MultiBinding>
</Button.CommandParameter>
StringObjectPair类:
public class StringObjectPair : FrameworkElement
{
public string Key { get; set; }
public static readonly DependencyProperty ValueProperty = DependencyProperty.Register("Value", typeof(object), typeof(StringObjectPair), new PropertyMetadata(defaultValue: null));
public object Value
{
get { return GetValue(ValueProperty); }
set { SetValue(ValueProperty, value); }
}
}
在MyMultiValueConverter入值[1]。价值和值[2]。价值性质我看到空值,但是User.Id和User.Name不等于空。 在输出窗口中没有错误。 我该如何绑定这个?
此选项是不适合的解决方案。目标是通过一个“键值”字典。即有一个命令需要字典参数。并且有很多按钮,都有不同的参数。 – adeptus