could the SelectionChanged event in WPF be handled only for user interaction?

前端 未结 3 836
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-16 20:58

I would like to handled SelectionChanged event in WPF DataGrid element for user interaction/selection only and skip if it\'s due to binding or other set values. Any idea how

3条回答
  •  醉酒成梦
    2020-12-16 21:57

    Maybe try combine SelectionChanged event with PreviewMouseDown event. When user click a row you set some property and in SelectionChanged event handler check if than property was changed.

    Sample code XAML:

    
                      
    
    

    Code behind:

    bool isUserInteraction;
    
    private void OnSelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        if (isUserInteraction)
        {
            //some code
    
            isUserInteraction = false;
        }
    }
    
    private void OnPreviewMouseDown(object sender, MouseButtonEventArgs e)
    {
        isUserInteraction = true;
    }
    

提交回复
热议问题