WPF:GridViewColumnresize事件

我正在使用ListViewGridView 。 是否有GridViewColumnresize事件?

看看MSDN DridViewColumn的详细信息 。 它不会有这样的事件,可能需要一些解决方法,但我不确定。 看看这里

希望能帮助到你。

我将处理PropertyChanged事件。 在Visual Studio intellisense中看不到PropertyChanged事件,但你可以欺骗它:)

  GridViewColumn column = ... ((System.ComponentModel.INotifyPropertyChanged)column).PropertyChanged += (sender, e) => { if (e.PropertyName == "ActualWidth") { //do something here... } }; 

虽然GridViewColumn似乎没有Resize事件,但您可以绑定到ColumnWidth属性。

您可以使用下面的示例XAMLvalidation这一点 – 此示例不需要任何代码。 它仅在一个方向上绑定,从列宽到文本框,当您resize时,您将看到文本框立即更新为列宽。

(这只是一个简单的例子;如果你想在代码中选择resize,我会创建一个具有Width属性的类,因此绑定将在两个方向上起作用)。

         Item 1 Item 2     
 private void ListView_Loaded( object sender, RoutedEventArgs e ) { // Add the handler to know when resizing a column is done ((ListView)sender).AddHandler( Thumb.DragCompletedEvent, new DragCompletedEventHandler( ListViewHeader_DragCompleted ), true ); } private void ListViewHeader_DragCompleted( object sender, System.Windows.Controls.Primitives.DragCompletedEventArgs e ) { ListView lv = sender as ListView; ... code handing the resize goes here ... } 

XAML: