C# MSSQL View => Klasse =>BindingList=>DataGridView

roker002

Commander
Registriert
Dez. 2007
Beiträge
2.075
Ich habe eine Frage.

Ich versuche mittels BindingList eine View aus der Datenbank abzubilden. Die einzelnen Zeilen speichere ich in die Klasse ab und füge die ganze Zeile anschließend zu der BindingList hinzu.

Hierbei will ich nicht nur eine tabellarische Ansicht haben, sondern auch einige eigene Spalten definieren (wenn ich über den DataSet gehe, muss ich manuell die Spalten zu der DataGridView hinzufügen). String und Int Datentypen werden ja im TextBox der DataGridView abgebildet. Boolean Werte werden mit CheckBox dargestellt... jetzt kommts.

Ich wollte einen Button übergeben. Das heißt, in der Klasse habe ich einen Property "Button" der dann im DataGridView dargestellt werden soll. Mit dem WinForm Button geht es nicht. Mit dem CellButton gehts auch net. ColumButton funktioniert auch net. Wie kann ich den kennzeichnen, dass es sich beim Property um einen Button handelt?

THX


EDIT:

Kann man irgendwie einen Attribut für die Property setzen, damit diese Property als Button erkannt wird?
 
Zuletzt bearbeitet:
Also kann man doch nicht in eine Klasse den Button angeben und diesen Dann ausgeben... in Form einer BindingList deren einträge eine Klasse sind und die Property der Klasse ein Button ist... Schade.

Eventuell, falls jemand eine ähnliche Lösung sucht - ich habe nachgedacht. Eventuell kann man das ganze mittels Boolean Werte anstellen. Also Boolean wird als Checkbox gecastet (in die GridView). Ändert der User den Wert der Checkbox, so wird in der Logik von Property hinterlegt, dass wenn es true ist, so wird irgendwas bestimmtes ausgeführt, so ähnlich wie Events mit dem Klick auf dem Button, nur halt ohne Events.

Trotzdem danke für die Antwort!


EDIT

Hmm, das ist eine Böse überraschung. Man kann schon die Boolean Werte Manipulieren, aber es gibt ein neues Problem. Leider werden die Werte erst aktuallisiert wenn man die Zeile verlässt. Kann man das irgendwie nicht anders Lösen, so dass die Änderung sofort auftritt?

EDIT2
So, man kann das Problem mit dem Editieren Lösen, wenn man einen Event zum Grid Bindet (CellContentClicked). Dort beendet man das Editieren mittels EndEdit() von DataGridView...

Mich würde aber ein Echter Button ehe besser Passen. Irgendwie sieht es nicht so gut aus!
 
Zuletzt bearbeitet:
Zurück
Oben