Yerf!
Ich hoff mal, das sich auch ein paar .Net-Kenner hier rumtreiben... ich hab da nämlich so ein Problem...
Ich habe eine Klasse die sich von DataView ableitet und das OnListChenged überschreibt:
protected override void OnListChanged(System.ComponentModel.ListChangedEventArgs e)
{
if (e.ListChangedType == System.ComponentModel.ListChangedType.ItemChanged && e.NewIndex >= 0)
{
this[e.NewIndex]["Changed"] = DateTime.Now;
}
base.OnListChanged(e);
}
Das Problem ist: die Änderung innerhalb des Handlers feuert wieder das Event, was zu einer Endlos-Rekursion führt. Leider ist e.PropertyDescriptor null, ansonsten könnte ich abfragen auf welchem Feld die Änderung erfolgte und das "Changed"-Feld davon ausnehmen.
Google hat erst mal auch nicht weiter geholfen. Das einzige was ich gefunden habe ist, dass der PropertyDescriptor nicht null sein sollte, wenn man .NET 4 benutzt (soll ein Bug im 3.5er sein)... ich habs nochmal kontrolliert, das Projekt steht auf .NET4 Client Profile.
Hat noch jemand eine schlaue Idee, kann ich z.B. in einer abgeleiteten Klasse den DataView ändern ohne dass der Event feuert?
Gruß,
Harlequin
RIP --- XHTML 2
nur die Besten sterben jung