Button zu DataGridView hinzufügen



  • Ich tippe immernoch, das es 0 ist, weil keine Datenquelle zugewiesen ist. - Aber du behauptest ja, das dies immer vor der Abfrage der Fall ist.



  • Nun klappt es! Danke!



  • Und, magst uns auch aufklären, woran es hakte?



  • ICh kann es leider nicht erklären, weshalb es geklappt hat 😞

    Stehe nun wieder vor dem selben Problem???

    Ich tippe immernoch, das es 0 ist, weil keine Datenquelle zugewiesen ist. - Aber du behauptest ja, das dies immer vor der Abfrage der Fall ist.

    Wie kann ich das prüfen??

    Laut der Reihenfolge in meinem Code sollte das doch der Fall sein, oder nicht?

    void GetData()
            {
                dataGridView1.DataSource = null;
                dataGridView1.Rows.Clear();
                dataGridView1.Columns.Clear();
    
                DataTable table = DB.GetNumberPrefix();
                this.dataGridView1.DataSource = table;
    
                AddButton();
            }
    
            void AddButton()
            {
                DataGridViewButtonColumn bnCol = new DataGridViewButtonColumn();
                bnCol.Text = "Speichern";
                bnCol.UseColumnTextForButtonValue = true;
                this.dataGridView1.Columns.Insert(5, bnCol);
    
                dataGridView1.CellClick += new DataGridViewCellEventHandler(ddataGridView1_CellClick);
            }
    

    Entschuldige, aber ich verstehe es wirklich nicht 😕



  • Nach deiner Codereihenfolge sollte die Spalte natürlich an der richtigen Position sein, wenn du sie in der 6. Spalte haben möchtest.

    Allerdings frage ich mich, warum es nun plötzlich nicht mehr funktionieren soll, wenn es zuvor funktioniert hat. Was hast du denn in der Zwischenzeit geändert?



  • Die Spalte ist an der richtigen Position, nur der ColumnIndex ist 0

    Geändert: Eine neue Funktion und eine andere DataGridView



    1. Hast du wirklich mit der Buttonspalte 6 Spalten?
      -> Wenn ja sieht es für mich aus, als wenn nur der DisplayIndex gesetzt wird.
      -> Wenn nein, nutze den richtigen Index. Denn dieser ist 0-basiert.

    2. Wird nur der DisplayIndex gesetzt, musst du den ColumnIndex manuell anpassen.



  • inflames2k schrieb:

    1. Hast du wirklich mit der Buttonspalte 6 Spalten?
      -> Wenn ja sieht es für mich aus, als wenn nur der DisplayIndex gesetzt wird.
      -> Wenn nein, nutze den richtigen Index. Denn dieser ist 0-basiert.

    2. Wird nur der DisplayIndex gesetzt, musst du den ColumnIndex manuell anpassen.

    Ich dachte der ColumnIndex ist schreibgeschützt ...somit kann ich diesen doch nicht ändern/anpassen? 😕



  • Ist er auch, weiß gerade nicht mehr wie, aber irgendwie hat ich den auch schon umgebogen.

    Aber was mir gerade einfällt, ist der ColumnIndex für dich wirklich überlebensrelevant? - Ansonsten würde ich die Spalte nämlich mit einem Namen versehen und bei Prüfungen immer über den Namen zugreifen.



  • Danke für den Tipp!!
    So klappt es super 🙂


Anmelden zum Antworten