Tritt ein, bevor die Spalte verschoben wird.

C# | Visual Basic | Visual C++ |
public event OnBeforeColumnMove BeforeColumnMove
Public Event BeforeColumnMove As OnBeforeColumnMove
public: event OnBeforeColumnMove^ BeforeColumnMove { void add (OnBeforeColumnMove^ value); void remove (OnBeforeColumnMove^ value); }

Dieses Ereignis tritt immer ein, wenn der Benutzer eine Spalte
mit der Maus an eine neue Position verschiebt. Der Parameter
BeforeColumnMoveEventArgs enthält eine
Membervariable Cancel, welche, wenn sie
auf true gesetzt wird, das Verschieben der Spalte
verhindert.


OnBeforeColumnMove evt; // Event evt=new OnBeforeColumnMove(grid_BeforeColMove); // Event instanz grid.BeforeColumnMove += evt; // ..für's Grid grid.AddCols(10); // 10 Spalten grid.AddRows(10); // ...10 Zeilen grid.Rows[0].Fixed = true; // Spaltenkopf grid.Cols[0].Fixed = true; // Zeilenkopf for(int c=grid.FixedColCount; c<grid.Cols.Count; c++) // alle Spalten for(int r=grid.FixedRowCount; r<grid.Rows.Count; r++) // alle Zeilen grid[c,r].Value=c+"."+r; // Zellenwert private void grid_BeforeColMove(object sender, BeforeColumnMoveEventArgs e) { // diese Spalte soll.. Console.Write("Spalte="+e.Column); // ..verschoben werden if(e.Column%4==0){ // jede vierte.. Console.WriteLine("--> Verschieben Abbruch"); // .. Spalte.. e.Cancel = true; // ..abbrechen } else // ansonsten.. Console.WriteLine("--> Verschieben ok"); // ..ok }