T-Back Geschrieben 15. Februar 2010 Geschrieben 15. Februar 2010 Hallo Leute, Kennt jemand folgenden Fehler im DataGridView: Ich habe ein Programm geschrieben, ein Datenbank Client Programm. Ich verwende ein DataGridView um Daten anzuzeigen. Beim laden der Windows Form (Ereignis Load) habe ich folgenden Code für das DataGridView verwendet: dgvDaten.AutoGeneratecolumns = false; Wenn ich die Windows Form so debugge, kommt ein leeres DataGridView! Verwende ich jedoch den Code: dgvDaten.AutoGeneratecolumns = true; Dann erscheinen die Daten. Ich habe nämlich ein Problem mit dem Visual Studio, dass es ausgeblendete Spalten im Designer ausblendet, aber sobald ich debugge und das Programm starte, dann sind wieder alle Spalten sichtbar. Wisst Ihr evtl. ob es eine spezifische Eigenschaft gibt für den Code "dgvDaten.AutoGeneratecolumns = false;", damit Daten aus der Datenbank angezeigt werden. Denn wenn ich statt "true", den Wert "false" nehme dann übernimmt das Visual Studio die ausgeblendeten Spalten und zeigt nur die an, die ich möchte, dafür fehlen aber die Daten aus der Datenbank. Ich bitte um Hilfe, falls jemand dieses Problem kennt und währe sehr dankbar, wenn Ihr mir Ratschläge geben könntet. DANKE!!! LG Zitieren
ronaldus Geschrieben 15. Februar 2010 Geschrieben 15. Februar 2010 Hi, wenn man die AutoGenerate-Eigenschaft auf false setzt, definiert man die Spalten selbst. Zum Beispiel, will man eine Liste mit Adress-Objekten an das Grid als Datasource binden...So definiert man die Spalten folgendermaßen: /// <summary> /// Kennzeichen, ob die Konfiguration bereits vorgenommen wurde. private bool datagridViewKonfiguriert = false; private void BuildGridHeaderForGrid() { if (datagridViewKonfiguriert) { // Die Konfiguration wurde bereits einmal durchlaufen. // -> Keine weitere Aktion return; } DataGridViewTextBoxColumn idColumn = new DataGridViewTextBoxColumn(); idColumn.HeaderText = "AdressID"; idColumn.DataPropertyName = "Id"; idColumn.ReadOnly = true; this.dgvAlternativAdresse.Columns.Add(idColumn); DataGridViewTextBoxColumn stadtColumn = new DataGridViewTextBoxColumn(); stadtColumn.HeaderText = "Stadt"; stadtColumn.DataPropertyName = "City"; this.dgvAlternativAdresse.Columns.Add(stadtColumn); // Merken, dass die Liste konfiguriert wurde this.datagridViewKonfiguriert = true; Diese Methode wird vor dem Übergeben der Datasource aufgerufen und dann werden nur die definierten Spalten mit den Daten angezeigt. Mfg Ronaldus Zitieren
T-Back Geschrieben 15. Februar 2010 Autor Geschrieben 15. Februar 2010 Danke für deine Ausführliche Antwort!!! LG Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.