首页 文章

ViewModel属性更改上的WPF DataTrigger

提问于
浏览
2

我试图在我的ViewModel中的属性发生更改时触发触发器 . 无论我尝试什么,我似乎都无法触发 . 我的XAML看起来像这样:

<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
    <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
    <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
    <Setter Property="Padding" Value="0 1" />
    <Setter Property="FontWeight" Value="Normal" />
    <Style.Triggers>
        <DataTrigger Binding="{Binding IsExpanding}" Value="True">
            <Setter Property="Control.Template" Value="{StaticResource ResourceKey=loadingTreeViewItem}" />
        </DataTrigger >
        <Trigger Property="IsSelected" Value="True">
            <Setter Property="FontWeight" Value="Bold" />                            
        </Trigger>
    </Style.Triggers>
</Style>

IsExpanded和IsSelected绑定工作正常,但是当IsExpanding为true时,我无法触发DataTrigger . 这些属性位于同一ViewModel中 . 我尝试为RelativeSource添加不同的变体,但没有运气 . 任何反馈都表示赞赏 .

1 回答

  • 0

    原来触发器正在工作 . 问题是IsExpanding属性和获取TreeView数据的调用都发生在UI线程上 . 我调用了调用来获取数据,一切都按预期工作

相关问题