我想改变用户群中因第二次扶养财产(Type)变更而引发的扶养财产的状况。
我试图将数据提错定义如下,但出于某种原因,它做了大量工作:
<UserControl.Resources>
<Style TargetType="{x:Type UserControls:MyUserControl}">
<Style.Triggers>
<DataTrigger Binding="{Binding ViewType}" Value="ViewType2">
<Setter Property="Mode" Value="Logon"/>
</DataTrigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
为了核实我的约束力正在正确运作,我写道,在同样的用户控制下测试了XAML:
<Style x:Key="butstyle">
<Style.Triggers>
<DataTrigger Binding="{Binding ViewType}" Value="ViewType2">
<Setter Property="Control.Foreground" Value="White"/>
</DataTrigger>
</Style.Triggers>
</Style>
当我把这种风格划入一个纽州时,我看到在适当的时候将原色改成白色,这证明我对Gevpe的束缚正在发挥作用。
我似乎需要使用一种使用者控制下的风格。 资源(如上文法典的第一部分),但“男性”财产从未确定。
这是这样做的正确途径吗? 我试图尽可能在XAML中保持这一作用,但我感到不舒服的是,如果与视觉分子没有直接关系,那么触发因素如何发挥作用。
在相关情况下,“电离层”约束性财产在母用户范围内界定,“Mode”财产在MyUserControl上界定。
<>Update:
我利用变换者发现,我的触发点正在被称作,但我的集束手却因某种原因没有介入。 在这方面,我正试图制定我的《发展法》。 set门和OnModeChanged()被点击。 我的属地财产是否有任何错误?
public enum ModeStates { Logon, NextState }
public ModeStates Mode
{
get { return (ModeStates)GetValue(ModeProperty); }
set { SetValue(ModeProperty, value); }
}
protected static readonly DependencyProperty ModeProperty = DependencyProperty.Register(
"Mode", typeof(ModeStates), typeof(MyUserControl),
new FrameworkPropertyMetadata(new PropertyChangedCallback(OnModeChanged))
);
private static void OnModeChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
// .......
}
<>Update:
I was able to use DependencyPropertyDescriptor.AddValueChanged() to solve my problem in a pretty clean fashion.