windows - DataGridView problem, når du tilføjer kolonner

Indlæg af Hanne Mølgaard Plasc

Problem



Hej gutter! Første gang jeg bruger Visual Studio 2008 Windows Form Application med C ++.


Jeg ønsker at lægge en dataGridView på min formular. Det er ok. Men når du tilføjer en kolonne, vises i gridView 2 kolonner. Først uden nogen header (som jeg ikke vil) og den anden er ok (min kolonne). Jeg forsøgte at indstille kolonne nummeret fra kode, men det samme sker.


Enhver ide at løse dette?


Tak,
 Andrew


// 
        // table
        // 
        this->table->AllowUserToAddRows = false;
        this->table->AllowUserToDeleteRows = false;
        this->table->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;
        this->table->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^  >(1) {this->Column1});
        this->table->Location = System::Drawing::Point(13, 89);
        this->table->Name = L"table";
        this->table->ReadOnly = true;
        this->table->Size = System::Drawing::Size(240, 150);
        this->table->TabIndex = 2;
        // 
        // Column1
        // 
        this->Column1->HeaderText = L"Column1";
        this->Column1->Name = L"Column1";
        this->Column1->ReadOnly = true;

Bedste reference


Tilføjer du kolonnen i konstruktøren?


Jeg har tidligere haft et problem, hvor elementer, der blev tilføjet i konstruktøren, blev tilføjet to gange, fordi (jeg tror) konstruktøren bliver kaldt for at få kontrollen til at blive vist i designervisningen (som derefter bliver tilføjet til forekomsten) og så igen når du kører dit program.


Hvis det er hvad der sker for dig, skal du kontrollere, at du ikke er i designtilstand.


Der er et par forskellige måder at kontrollere dette på, afhængigt af konteksten. Se Hvordan fortælle om .NET-koden køres af Visual Studio-designer