CLI / C ++ dataGridView的示例-设置组合框列表的索引

问题描述 投票:0回答:1

我正在尝试在MS CLI / C ++中设置dataGridView。

[如果我有一个字母列表(说A-D),我想填充dataGridView类型。我想做的是创建一个for循环,该循环将用Letter

填充每个单元格

如具有A的Row(0)单元格(0),具有B的Row(0)单元格(1)等

我找不到简单的直接方法。有人可以帮忙吗

下面是我的代码示例

int columns = getColumnCount();
int rows = getRowCount();

// Clear existing items
dataGridView1->Columns->Clear();
dataGridView1->Rows->Clear();

DataGridViewComboBoxColumn ^ dataGridComboColumn = gcnew DataGridViewComboBoxColumn;
DataGridViewCell ^ dataGridComboCell = gcnew DataGridViewComboBoxCell;
DataGridViewComboBoxColumn ^ dataGridComboColumn = gcnew DataGridViewComboBoxColumn;

for (int col = 0; col < columns; col++)
{
    //addItemToComboBox(dataGridComboColumn);
    dataGridComboColumn->Items->Add("A");
    dataGridComboColumn->Items->Add("B");
    dataGridComboColumn->Items->Add("C");
    dataGridComboColumn->Items->Add("D");

    dataGridView1->Columns->Add(dataGridComboColumn);
}

for (int row = 0; row < rows; row++)
{
    dataGridView1->Rows->Add(row);
}

dataGridView1->Rows[1]->Cells[1]->Value = dataGridComboColumn->Items[1];


int selectcnt = 0;
for (int row = 0; row < rows; row++)
{
     for (int col = 0; col < columns; col++)
    {
        selectcnt++;
    }
}

}

c++ datagridview command-line-interface datagridviewcombobox
1个回答
0
投票

我找到了实现的解决方案。

我必须定义一个临时单元格

DataGridViewComboBoxCell^ tempCell = (DataGridViewComboBoxCell^)dataGridView1->Rows[row]->Cells[col];
if (tempCell != nullptr)
{
    dataGridView1->Rows[row]->Cells[col]->Value = tempCell->Items[selectCnt];
    if ((selectCnt + 1) < m_AvailableMliUltras->size())
    {
    selectCnt++;
    }
    else
    {
    selectCnt = 0;
    }   
}

这成功了

© www.soinside.com 2019 - 2024. All rights reserved.