バージョン

AfterColPosChanged イベント

列の移動、サイズ変更または交換した後に発生します。
シンタックス
'宣言
 
Public Event AfterColPosChanged As AfterColPosChangedEventHandler
public event AfterColPosChangedEventHandler AfterColPosChanged
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、AfterColPosChangedEventArgs 型の引数を受け取りました。次の AfterColPosChangedEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
ColumnHeaders 列 (読み取り専用)
ColumnPosChangedType 列位置が変更されたタイプ (読み取り専用)
解説

action 引数は、列に対して実行された操作 (移動、入れ替え、サイズ変更) を示します。

columns 引数は、移動、入れ替え、またはサイズ変更された UltraGridColumn オブジェクトへの参照を取得するために使用できる SelectedCols コレクションへの参照を返します。この参照を使用して、返されたコレクションのプロパティまたはメソッドだけでなく、コレクション内のオブジェクトのプロパティまたはメソッドにもアクセスできます。

このイベントは、プログラムまたはユーザーの操作によって 1 つ以上の列が移動、入れ替え、またはサイズ変更された後に発生します。列をプログラムからサイズ変更するには、列の Width プロパティを設定します。プログラムから移動するには、列のヘッダーの VisiblePosition プロパティを設定します。

列ヘッダーの VisiblePosition プロパティは、移動または入れ替えられた列の新しい位置を確認するために使用できます。

ユーザーが列を移動、入れ替え、またはサイズ変更できないようにするには、それぞれ AllowColMoving プロパティ、AllowColSwapping プロパティ、または AllowColSizing プロパティを設定します。

AfterGroupPosChanged イベントは、1 つ以上のグループが移動、入れ替え、またはサイズ変更された後に発生します。

BeforeColPosChanged イベントは、1 つ以上の列が移動、入れ替え、またはサイズ変更される前に発生します。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
Imports System.Diagnostics

   Private Sub UltraGrid1_AfterColPosChanged(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.AfterColPosChangedEventArgs) Handles ultraGrid1.AfterColPosChanged

       ' ユーザーが列を移動、入れ替え、またはサイズ変更した後に AfterColPosChanged を
       ' 発生します

       If PosChanged.Moved = e.PosChanged Then
           ' 1 つ以上の列が移動されました

           Debug.WriteLine("Following are the new positions of the columns:")

           Dim i As Integer
           For i = 0 To e.ColumnHeaders.Length - 1
               Debug.WriteLine("    " & e.ColumnHeaders(i).Column.Key & " is moved to the new visible index of " & e.ColumnHeaders(i).VisiblePosition)
           Next
       ElseIf PosChanged.Swapped = e.PosChanged Then
           ' 2 つの列が入れ替えられています
           Debug.WriteLine(e.ColumnHeaders(0).Column.Key & " and " & e.ColumnHeaders(1).Column.Key & " columns have been swapped.")
       ElseIf PosChanged.Sized = e.PosChanged Then
           ' 列がサイズ変更されました
           Debug.WriteLine(e.ColumnHeaders(0).Column.Key & " has been resized to the new width of " & e.ColumnHeaders(0).Column.Width)
       End If

   End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;

private void ultraGrid1_AfterColPosChanged(object sender, Infragistics.Win.UltraWinGrid.AfterColPosChangedEventArgs e)
{

	// ユーザーが列を移動、入れ替え、サイズ変更した後に AfterColPosChanged を
	// 発生します
	
	if ( PosChanged.Moved == e.PosChanged )
	{	
		// 1 つ以上の列が移動されました

		Debug.WriteLine( "Following are the new positions of the columns:" );

		for ( int i = 0; i < e.ColumnHeaders.Length; i++ )
		{										
			Debug.WriteLine( "    " + e.ColumnHeaders[i].Column.Key + 
				" is moved to the new visible index of " + e.ColumnHeaders[i].VisiblePosition );
		}
	}
	else if ( PosChanged.Swapped == e.PosChanged )
	{
		// 2 つの列が入れ替えられています

		Debug.WriteLine( e.ColumnHeaders[0].Column.Key + " and " + e.ColumnHeaders[1].Column.Key 
			+ " columns have been swapped." );				
	}
	else if ( PosChanged.Sized == e.PosChanged )
	{
		// 列がサイズ変更されました

		Debug.WriteLine( e.ColumnHeaders[0].Column.Key + 
			" has been resized to the new width of " + e.ColumnHeaders[0].Column.Width );
	}

}
参照