Когда я изменяю источник данных в Моей сетке данных, столбцы не заполняются автоматически, если только я не заказываю столбец - PullRequest
0 голосов
/ 24 сентября 2010

У меня есть DataGrid в Win Form, которая отлично отображается, когда я первоначально установил источник данных. AutoSizeColumnsMode - это «DisplayCells». Когда я изменяю источник данных во время выполнения, строки не меняются автоматически, если я не переупорядочу столбец. Кто-нибудь знает, как это исправить? Также обратите внимание, что DataGrid находится на другой вкладке, чем кнопка, которая вызывает обновление.

Единственный код, который я когда-либо использовал для заполнения сетки:

dgUnPrinted.DataSource = TableName;
dgUnPrinted.Refresh();

Ответы [ 3 ]

0 голосов
/ 24 сентября 2010

Вы пробовали метод AutoResizeColumns?

http://msdn.microsoft.com/en-us/library/ms158595%28v=VS.90%29.aspx

0 голосов
/ 25 сентября 2010

Подумав, я решил отсортировать столбец по коду.Это заполнило все клетки.Я не уверен, почему это необходимо или почему это работает, когда все остальное не работает, но по крайней мере у меня есть исправление.

dgUnPrinted.Sort(dgUnPrinted.Columns[0], ListSortDirection.Ascending);          
0 голосов
/ 24 сентября 2010

попробуйте http://www.codeproject.com/KB/miscctrl/AutoResizeDataGrid.aspx или http://www.hanselman.com/blog/HowDoIAutomaticallySizeAutosizeColumnsInAWinFormsDataGrid.aspx

или используйте DataGridView, тогда вы можете поиграть со свойством gdv.Columns [0] .AutoSizeMode.

...