我可以通过 DataTrigger (XAML) 调用函数吗?

2024-03-08

我在 .xaml.cs 中有一个我想调用的函数:

.xaml.cs

private void treeView_SelectedItemChanged(object sender, EventArgs e)
{
        //treeView.ScrollToCenterOfView(sender as TreeViewItem);
}

就像这篇文章中的那样:使 ListView.ScrollIntoView 将 Item 滚动到 ListView 的中心 (C#) https://stackoverflow.com/questions/2946954/make-listview-scrollintoview-scroll-the-item-into-the-center-of-the-listview-c答案1

但我不使用 SelectedItem,我的方法是这样的:

XAML:

<Style.Triggers>
     <DataTrigger Binding="{Binding Path=IsActive}" Value="true">
          // ###call this function
     </DataTrigger>
</Style.Triggers>

我不知道如何通过更改数据模型来提高此功能。 在我推荐的每个教程中,他们都是通过事件/命令来完成的。

Thx


只是为这些场景添加另一个稍微有点老套的选项。

不完全是触发器,但您可以使用通用的FrameworkElement.Tag https://learn.microsoft.com/en-us/dotnet/api/system.windows.frameworkelement.tag?view=netframework-4.8property 为您想要监视的属性设置绑定,然后在其更改时运行回调。

eg:

<DataTemplate>
    <StackPanel Tag="{Binding IsActive, NotifyOnTargetUpdated=True}"
                TargetUpdated="CodeBehindMethodToCall">

        <!-- snip rest of template --> 

    </StackPanel>
<DataTemplate>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以通过 DataTrigger (XAML) 调用函数吗? 的相关文章

随机推荐