这是我能提出的问题陈述和部分解决方案。需要帮助尝试将其关闭到最终的优雅解决方案。
我有一个用户控件,它有一些自定义依赖属性。其中一个是ButtonStyle。我的用户控件基本上只包含一个按钮。示例代码段如下所示。
usercontrol中的按钮只能有两种样式 - 每种样式根据调用用户控件时传递的样式与其他样式(颜色,前景,背景等)根本不同。
该样式还需要包含DataTrigger作为设计的一部分。
我的XAML如何利用此自定义DP属性并在按钮上支持2种样式。
任何示例代码/链接/指针 - 都会非常感激
<StackPanel>
<Button Command="{Binding SubmitCommand}" Content="{Binding ButtonContent}" />
</StackPanel>
自定义DP代码
public partial class ButtonUserControl : UserControl
{
#region ButtonStyle DP
public static readonly DependencyProperty ButtonStyleProperty = DependencyProperty.Register("ButtonStyle", typeof(string), typeof(ButtonUserControl), new PropertyMetadata(""));
public string ButtonStyle
{
get { return (string)GetValue(ButtonStyleProperty); }
set { SetValue(ButtonStyleProperty, value); }
}
#endregion
#region ButtonContent DP
public static readonly DependencyProperty ButtonContentProperty = DependencyProperty.Register("ButtonContent", typeof(string), typeof(ButtonUserControl), new PropertyMetadata(""));
public string ButtonContent
{
get { return (string)GetValue(ButtonContentProperty); }
set { SetValue(ButtonContentProperty, value); }
}
#endregion
public ButtonUserControl()
{
InitializeComponent();
var mw_vm = new ButtonUserControlViewModel();
DataContext = mw_vm;
}
}