Mögliche Objekt-Events durchlaufen am Beispiel DataGrid
Frank Dzaebel, erstellt am: 24.05.2005, zuletzt geändert: 24.05.2005
Kategorie: Datagrid, Reflection, .NET-Version: 1.1
Nicht nur Properties, Felder und Methoden sind über System.Reflection einsehbar, auch alle Events können sichtbar gemacht werden. Die Methode Type.GetEvents ist der Schlüssel dazu im folgenden kleinen Codebeispiel:
string NL = Environment.NewLine;
private void ShowText(string txt)
{
textBox1.AppendText(txt + NL);
textBox1.ScrollToCaret(); textBox1.Focus();
}
private void ShowAllEventsOf(Type type)
{
try
{
BindingFlags myBindingFlags = BindingFlags.Instance | BindingFlags.Public;
EventInfo[] eInfo = type.GetEvents(myBindingFlags);
ShowText("\nEvents from " + type.ToString());
for (int index = 0; index < eInfo.Length; index++)
ShowText(eInfo[index].ToString());
}
catch(Exception exp){ShowText("Exception: "+exp.Message);}
}
private void btnEvents_Click(object sender, System.EventArgs e)
{ ShowAllEventsOf(typeof(DataGrid));
}