Матрица (двумерный массив) в C# Windows Forms

617
08 декабря 2016, 22:44

Подскажите, пожалуйста, какой компонент в виде таблицы можно использовать в C# Windows Forms для ввода/вывода матрицы? (Что-то вроде StringGrid'а в Delphi)

В гугле говорят, что для этого подходит DataGridView, но он довольно таки сложный, к тому же связанный с базами данных.

Answer 1

Используй DataGridView в нем нет ничего сложного.

DataGridView универсален и служит для отображения любой коллекции и не только с БД.

Для того, что бы привязать к нему элементы нужна коллекция, например List<T>.

После того, как ты создал коллецию, ты делаешь:

DataGridView.DataSource=<твоя коллекция> и данные автоматически заносятся в таблицу.

Это самый простой вариант.

А вот с массивом придется немного повозится.

Например, есть массив string [,]mas размерностью NхM

dataGridView1.RowCount = N;
dataGridView1.ColumnCount = M;
int i, j;
for(i = 0; i < N; ++i)
    for(j = 0; j < M; ++j)
        dataGridView1.Rows[i].Cells[j].Value = mas[i, j];

На мой взгляд самое лучшее- это использовать коллекции.

READ ALSO
Отправить почту, чтобы &ldquo;От кого&rdquo; стоял произвольный email

Отправить почту, чтобы “От кого” стоял произвольный email

Есть обратная связь, пользователь должен заполнить обязательное поле EmailПри нажатии на кнопку отправить, письмо отправляется на support@домен

284
Как внедрить файлы в ресурсы программы

Как внедрить файлы в ресурсы программы

Внедрил три текстовых файла в проектДумал они все время будут в проекте, однако они ссылаются на файлы в папке debug, что не есть хорошо, так...

231
ASP.NET MVC. Хочу чтобы ссылка открывалась в том же окне, где и почта

ASP.NET MVC. Хочу чтобы ссылка открывалась в том же окне, где и почта

Делаю подтверждение Токена по Email и при подтверждении ссылки в почтовом ящике, осуществляется переход в новую вкладку, мне захотелось сделать...

325