【问题标题】:WPF DataTrigger - own enum return null in XAMLWPF DataTrigger - 自己的枚举在 XAML 中返回 null
【发布时间】:2017-08-31 16:34:21
【问题描述】:

我有这个代码:

.xaml:

<DataTrigger Binding="{Binding Path=TypeItem}" Value="{x:Static local:CListBoxItem+ETypeItem.File}">
    ...
</DataTrigger>

.cs:

public CListBoxItem(ETypeItem _type)
{
    this.TypeItem = _type;
    InitializeComponent();
}

...

public enum ETypeItem { File,  Directory }

...

public static readonly DependencyProperty TypeItemProperty =
        DependencyProperty.Register("TypeItem", typeof(ETypeItem), typeof(CListBoxItem), new PropertyMetadata(ETypeItem.Directory));
public ETypeItem TypeItem
{
    get { return (ETypeItem) GetValue(TypeItemProperty); }
    set { SetValue(TypeItemProperty, value); }
}

当我运行应用程序时,我的风格不起作用。当我使用时:

<DataTrigger Binding="{Binding Path=TypeItem}" Value="{x:Null}">
    ...
</DataTrigger>

然后工作..如何让TypeItem加载自己的风格?

【问题讨论】:

    标签: c# wpf properties triggers datatrigger


    【解决方案1】:

    如果CListBoxItem 类派生自ListBoxItemControl,请尝试Trigger 而不是DataTrigger(和静态值Value="{x:Static local:CListBoxItem+ETypeItem.File}")。 DataTrigger 在 DataContext 中而不是在对象本身中搜索属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-17
      • 2021-08-30
      • 2016-07-31
      • 2010-12-02
      • 2023-03-06
      • 2012-08-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多