Ich habe ein Grundstücksraster mit 2 Gegenständen. Land & amp; Städte. Ich habe 1 Tabelle in der Datenbank: CountryCityTable, die LocationId, Titel, ParentId speichern. Für Länder parentId = 0 und für Städte ist countid.
In meinem propertygrid verwende ich diese und zeige sie in zwei Combobox-Elementen an. Bitte sehen Sie meinen Code:
%Vor%Und
%Vor%Und
%Vor%Nun möchte ich, wenn der Benutzer den Titel des Landes in propertygrid geändert hat, die Liste der Städte aktualisiert (zeige nur die Städte an, deren parentid diese = countryid).
Außerdem kann ich in meiner Klasse die Nummer 20 in meinem Code ( Db.LoadLocations (1,20); ) in die ausgewählte Länder-ID ändern?
Danke.
Sie müssen etwas ähnlich wie INotifyPropertyChanged
Microsoft INotifyPropertyChange-Dokumentation
Mit anderen Worten, Sie müssen ein Ereignis ausgelöst haben, wenn Sie eine Eigenschaft erhalten. Soweit ich mich erinnere, überprüft das Eigenschaftenraster automatisch diesen Typ von Ereignis / Schnittstelle und aktualisiert den korrekten Eigenschaftsknoten, wenn das Ereignis ausgelöst wird.
Der wichtige Teil ist:
%Vor%und
%Vor% Wenn Sie etwas tun möchten, das nicht vom PropertyGrid abgedeckt wird, müssen Sie lediglich Ihre eigene Methode im PropertyChanged
-Ereignis registrieren und tun, was Sie wollen.
Tags und Links c# propertygrid