ListView.ColumnReordered Event


在列标题顺序更改时发生。Occurs when the column header order is changed.

 event System::Windows::Forms::ColumnReorderedEventHandler ^ ColumnReordered;
public event System.Windows.Forms.ColumnReorderedEventHandler ColumnReordered;
member this.ColumnReordered : System.Windows.Forms.ColumnReorderedEventHandler 
Public Custom Event ColumnReordered As ColumnReorderedEventHandler 


下面的代码示例演示如何使用此成员。The following code example demonstrates the use of this member. 在此示例中,事件处理程序报告 ColumnReordered 事件的发生。In the example, an event handler reports on the occurrence of the ColumnReordered event. 此报表可帮助你了解何时发生事件,并可帮助你进行调试。This report helps you to learn when the event occurs and can assist you in debugging. 若要报告多个事件或频繁发生的事件,请考虑将 MessageBox.Show 替换为 Console.WriteLine 或将消息附加到多行 TextBox中。To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

若要运行示例代码,请将其粘贴到包含名为 ListView1ListView 类型实例的项目中。To run the example code, paste it into a project that contains an instance of type ListView named ListView1. 然后,确保事件处理程序与 ColumnReordered 事件关联。Then ensure that the event handler is associated with the ColumnReordered event.

private void ListView1_ColumnReordered(Object sender, ColumnReorderedEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "OldDisplayIndex", e.OldDisplayIndex );
messageBoxCS.AppendFormat("{0} = {1}", "NewDisplayIndex", e.NewDisplayIndex );
messageBoxCS.AppendFormat("{0} = {1}", "Header", e.Header );
messageBoxCS.AppendFormat("{0} = {1}", "Cancel", e.Cancel );
MessageBox.Show(messageBoxCS.ToString(), "ColumnReordered Event" );
Private Sub ListView1_ColumnReordered(sender as Object, e as ColumnReorderedEventArgs) _ 
     Handles ListView1.ColumnReordered

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "OldDisplayIndex", e.OldDisplayIndex)
    messageBoxVB.AppendFormat("{0} = {1}", "NewDisplayIndex", e.NewDisplayIndex)
    messageBoxVB.AppendFormat("{0} = {1}", "Header", e.Header)
    messageBoxVB.AppendFormat("{0} = {1}", "Cancel", e.Cancel)
    MessageBox.Show(messageBoxVB.ToString(),"ColumnReordered Event")

End Sub


ColumnReordered 事件是一个可取消的事件,可通过处理事件并将 Cancel 属性设置为 true来取消。The ColumnReordered event is a cancelable event and can be canceled by handling the event and setting the Cancel property to true. 但是,如果取消该事件,则 ColumnReorderedEventArgsNewDisplayIndex 将不会更改为 OldDisplayIndex 值。However, if the event is canceled, the NewDisplayIndex of the ColumnReorderedEventArgs will not change to the OldDisplayIndex value.

有关处理事件的详细信息,请参阅处理和引发事件For more information about handling events, see Handling and Raising Events.

Applies to