可以将值或参数传递给WPF用户控件吗?我正在使用MVVM模式。
<local:SampleUserControlView Forecolor="{Binding ForeColor}"/>
其中
ForeColor是View Color中的Type Color或Brush属性 窗口托管SampleUserControl View。
顺便说一句,该属性应该是Color还是Brush?
答案 0 :(得分:5)
是的,您可以使用dependency properties
传递。您可以在您要传递的类型的usercontrol中创建依赖项属性。下面是一个小例子,它将向您展示它是如何工作的。
public static readonly DependencyProperty MyCustomProperty =
DependencyProperty.Register("MyCustom", typeof(string), typeof(SampleUserControl));
public string MyCustom
{
get
{
return this.GetValue(MyCustomProperty) as string;
}
set
{
this.SetValue(MyCustomProperty, value);
}
}
您可以从父虚拟机设置MyCustom
,例如
<local:SampleUserControlView MyCustom="{Binding MyCustomValue}"/>