WPF DataGrid ItemsSource Binding Linq - PullRequest
       10

WPF DataGrid ItemsSource Binding Linq

3 голосов
/ 28 октября 2011

Вот моя проблема. У меня есть таблица данных WPF, и я связываю .ItemsSource с запросом linq IEnumerable результат. Это прекрасно работает. Когда я запускаю программу, данные загружаются правильно в сетку данных. Моя проблема слишком много данных отображается. (Пользователям IE не нужно видеть поля ID и т. Д.). То, что я пытаюсь сделать, это то, что после привязки к .ItemsSource я хочу скрыть несколько столбцов. Я нашел .Visibility и пытался установить его, но объект столбцов пуст. После привязки я попробовал следующие методы: .Items.Refresh () и .UpdateLayout ().

У меня вопрос, какой метод мне нужно вызывать для обновления столбцов после установки .ItemsSource?

Ответы [ 3 ]

2 голосов
/ 28 октября 2011

Другим решением может быть изменение вашего запроса linq.Просто выберите столбцы, которые вы хотите отобразить, например:

dataGrid.ItemsSource = myquery.Select(x => new { Name = x.Name, Age = x.Age });
0 голосов
/ 28 октября 2011

Если вы хотите использовать столбец .Visibility of DataGrid, сделайте это после загрузки данных в DataGrid.DataGrid не загружается сразу после привязки ItemSource;вот почему вы получаете пустые объекты столбца.

Надеюсь, это сработает для вас.

0 голосов
/ 28 октября 2011

Почему бы не настроить явно свою DataGrid?http://www.wpftutorial.net/DataGrid.html - это поможет вам настроить DataGrid вручную, а не использовать автоматически созданные столбцы.

...