Hallo
Ich habe eine "übliche" Anwendung in der u.a. Personen verwaltet werden.
Dazu nutze ich pro Person eine Klasse als Vorlage um die Standard Daten zu erfassen.
Diese sieht auszugsweise so aus:
Die ganzen Personenobjekte sind wiederrum in einer List of (Person).
Um schnell und einfach diese Daten anzuzeigen nutze ich ein Datagridview und binde diese Liste.
zb dgv.ItemsSource = PersonList
Nun zum eigendlichen Problem.
Ich möchte Fallweise nicht alle Properties im Datagridview angezeigt bekommen. Also Spalten weglassen.
Der User soll das ganze über einen Filter selbst definieren können. per Checkboxauswahl in einer Listview o.ä. Ich möchte es auch flexibel halten für den Fall das Properties einer Person in einer neueren Version hinzukommen.
Das Auslesen der Properties sollte über Reflection funktionieren so das die Liste dynamisch befüllt werden kann.
Dementsprechend müsste ich dann je nach Auswahl der Checkboxen die Spalten sichtbar oder unsichtbar machen. Hier weiss ich noch nicht wie ich diesen Schritt löse in zusammenhang mit Binding (wie die Zuordnung finden).
Alternativ könnte es sicher alles händisch bauen. Also Datagridview Zeilen/Spaltenweise per Schleifen selbst befüllen usw.
Da ich sicher nicht der erste mit solch einer Anforderung bin...gibt es doch sicher einen eleganteren Weg?
Danke und Gruß
Ich habe eine "übliche" Anwendung in der u.a. Personen verwaltet werden.
Dazu nutze ich pro Person eine Klasse als Vorlage um die Standard Daten zu erfassen.
Diese sieht auszugsweise so aus:
VB.NET-Quellcode
- Public Class Person
- Private _RefNr As String = ""
- Private _Name As String = ""
- Private _VorName As String = ""
- ...
- Public Property RefNr As String
- Get
- Return _RefNr
- End Get
- Set(ByVal value As String)
- _RefNr = value
- End Set
- End Property
- Public Property Name As String
- Get
- Return _Name
- End Get
- Set(ByVal value As String)
- _Name = value
- End Set
- End Property
- Public Property VorName As String
- Get
- Return _VorName
- End Get
- Set(ByVal value As String)
- _VorName = value
- End Set
- End Property
- ....
Die ganzen Personenobjekte sind wiederrum in einer List of (Person).
Um schnell und einfach diese Daten anzuzeigen nutze ich ein Datagridview und binde diese Liste.
zb dgv.ItemsSource = PersonList
Nun zum eigendlichen Problem.
Ich möchte Fallweise nicht alle Properties im Datagridview angezeigt bekommen. Also Spalten weglassen.
Der User soll das ganze über einen Filter selbst definieren können. per Checkboxauswahl in einer Listview o.ä. Ich möchte es auch flexibel halten für den Fall das Properties einer Person in einer neueren Version hinzukommen.
Das Auslesen der Properties sollte über Reflection funktionieren so das die Liste dynamisch befüllt werden kann.
Dementsprechend müsste ich dann je nach Auswahl der Checkboxen die Spalten sichtbar oder unsichtbar machen. Hier weiss ich noch nicht wie ich diesen Schritt löse in zusammenhang mit Binding (wie die Zuordnung finden).
Alternativ könnte es sicher alles händisch bauen. Also Datagridview Zeilen/Spaltenweise per Schleifen selbst befüllen usw.
Da ich sicher nicht der erste mit solch einer Anforderung bin...gibt es doch sicher einen eleganteren Weg?
Danke und Gruß