2-мерный массив Integer для DataGridView - PullRequest
9 голосов
/ 06 ноября 2010

Как бы я мог отобразить двумерный целочисленный массив в элемент управления DataGridView в C # .Net 4.0?

Ответы [ 2 ]

18 голосов
/ 06 ноября 2010

Следуйте примеру кода на этой странице, чтобы заполнить свойство Rows:

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.aspx

Редактировать

Оказывается, этонемного тернистее, чем я думал.Вот пример кода:

var data = new int[4,3]
{
    { 1, 2, 3, },
    { 4, 5, 6, },
    { 7, 8, 9, },
    { 10, 11, 12 },
};

var rowCount = data.GetLength(0);
var rowLength = data.GetLength(1);

for (int rowIndex = 0; rowIndex < rowCount; ++rowIndex)
{
    var row = new DataGridViewRow();

    for(int columnIndex = 0; columnIndex < rowLength; ++columnIndex)
    {
        row.Cells.Add(new DataGridViewTextBoxCell()
            {
                Value = data[rowIndex, columnIndex]
            });
    }

    dataGridView1.Rows.Add(row);
}
11 голосов
/ 28 декабря 2010

, чтобы заставить решение Мерлина работать, вам нужно установить количество столбцов, прежде чем добавлять строки в представление данных:

dataGridView1.ColumnCount = 3;
...