Tritt ein, bevor die Markierung der Zellen sich ändert.

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

Der Ereignishandler empfängt ein Argument vom Typ
BeforeSelectionChangeEventArgs.

Dieses Ereignis tritt ein, wenn sich die Markierung
der Zellen ändert. Der Parameter
BeforeSelectionChangeEventArgs enthält eine
Membervariable Cancel, welche, wenn sie
auf true gesetzt wird, die laufende und nachfolgenden
Benutzeraktionen für Markierungen abbricht.


OnBeforeSelectionChange evt; // Event Random rnd=new Random(); // Zufallszahlengenerator evt=new OnBeforeSelectionChange(grid_BeforeSelectionChange); // Event instanz grid.BeforeSelectionChange += evt; // ..für's Grid grid.AddCols(10); // zehn Spalten grid.AddRows(10); // ..und zehn Zeilen grid.SelectionType=eSelectionType.Free; // beliebig markieren 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; // Zellenwerte eintragen private void grid_BeforeSelectionChange(object sender, BeforeSelectionChangeEventArgs e){ // BeforeSelectionChange Console.WriteLine("Spalte :"+e.Column +",Zeile:"+e.Row); // ..infos ausgeben if(e.Column%4==0 || e.Row%4==0){ // jede 4. Spalte/Zeile e.Cancel = true; // ..Vorgang abbrechen Console.WriteLine("...abgebrochen"); // ..Meldung ausgeben } }

AfterSelectionChange()()