Иконки в DataGridView - PullRequest
       4

Иконки в DataGridView

0 голосов
/ 07 декабря 2010

У меня есть форма с элементом управления сеткой данных.

Сетка данных связана с DataView, который, в свою очередь, заполняется из DataTable. Приложение отлично работает в своем текущем состоянии, но теперь я хочу изменить его, чтобы добавить новый столбец в представление данных. Новый столбец должен быть иконкой.

Я предполагаю, что каким-то образом мне нужно создать новый столбец для значка в DataTable, чтобы он мог перетекать в таблицу данных. Любая помощь о том, как я могу этого достичь.

Вырезанная версия кода

private DataTable _tableDT = new DataTable("dt");
private DataView _viewDT = new DataView();

_viewDT.Table = _tableDT;
_tableDT.Columns.Add("Name", typeof(string));
_tableDT.Columns.Add("Desc", typeof(string));

// populate data table
_tableDT.Rows.Add(.....)

dataGridView1.DataSource = _viewDT;

Также в качестве дополнительного вопроса. Может ли столбец содержать значок и текст. (то есть в идеале новый столбец должен иметь значок с левой стороны, за которым следует текст).

Ответы [ 2 ]

0 голосов
/ 07 декабря 2010

Вы можете взять это руководство от Microsoft и поместить свой UserControl в него как DataGridViewUserControlColumn.

0 голосов
/ 07 декабря 2010

Немного прочитайте об этом. Он в VB, но его достаточно просто интерпретировать.

http://arsalantamiz.blogspot.com/2008/04/how-to-display-row-icon-in-datagridview.html

Кроме того, если вы читаете изображение из базы данных, вы можете просто заставить DataGridView выполнить всю тяжелую работу, просто добавив новый столбец DataGridViewImageColumn. Переопределив событие CellPainting, вы можете указать изображение на основе данных строки.

http://social.msdn.microsoft.com/forums/en-US/Vsexpressvcs/thread/4f3c8d15-f1f5-4d62-9f26-8a04f683a210

Надеюсь, это поможет, Том :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...