gpt4 book ai didi

wpf - WPF 中的 SelectionChanged 事件是否只能针对用户交互进行处理?

转载 作者:行者123 更新时间:2023-12-01 19:24:42 25 4
gpt4 key购买 nike

我想处理 WPF DataGrid 元素中的 SelectionChanged 事件,仅用于用户交互/选择,如果是由于绑定(bind)或其他设置值而导致的,则跳过。知道如何确定选择是否因用户交互而更改吗?或者任何可以完成类似任务的替代事件?

最佳答案

也许尝试将 SelectionChanged 事件与 PreviewMouseDown 事件结合起来。当用户单击一行时,您设置一些属性,并在 SelectionChanged 事件处理程序中检查该属性是否已更改。

示例代码 XAML:

<DataGrid SelectionChanged="OnSelectionChanged" PreviewMouseDown="OnPreviewMouseDown">
<!--some code-->
</DataGrid>

隐藏代码:

bool isUserInteraction;

private void OnSelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (isUserInteraction)
{
//some code

isUserInteraction = false;
}
}

private void OnPreviewMouseDown(object sender, MouseButtonEventArgs e)
{
isUserInteraction = true;
}

关于wpf - WPF 中的 SelectionChanged 事件是否只能针对用户交互进行处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14301271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com