привязка списка к dataGrid в WPF
Привет,я извлекаю данные из базы данных с помощью технологии LINQ и храню их в res:
var db = new DCDataContext(); var res= from t in db.staffs select new {t.lName , t.fName ,t.pic};
персонал-это моя таблица в базе данных ,и я хочу отобразить lName, fName и pic в datagrid.
когда я привязываю res к datagrid,он отображает только fName и lName, а не pic. для решения этой проблемы
Я определяю список< gt; и добавляю в него сотрудников:
List<stf> ls=new List<stf>(); stf s = new stf(); foreach(var a in res) { s.lName = a.lName; s.fName = a.fName; s.img = (((System.Data.Linq.Binary)a.pic).ToArray()); ls.Add(s); } dataGrid1.ItemsSource = ls;
stf-это класс со свойствами, такими как поле персонала
но когда я запускаю его ,datagrid показывает пустые строки
когда я отладки с точки останова Itemsource заполнить и есть достоверные данные, но элемент управления DataGrid
ничего не показывает!!!!!
мой xaml треска:
<Window.Resources> <local:ImageConverter x:Key="ConvertImage"></local:ImageConverter> </Window.Resources> <Grid> <DataGrid Height="200" HorizontalAlignment="Left" Margin="44,47,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="407" AutoGenerateColumns="False" FlowDirection="RightToLeft"> <DataGrid.Columns> <DataGridTemplateColumn Header="picture" IsReadOnly="True"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <ContentControl Content="{Binding img,Converter={StaticResource ConvertImage}}" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Binding="{Binding fName}" Header="Name" /> <DataGridTextColumn Binding="{Binding lName}" Header=" Family" /> </DataGrid.Columns> </DataGrid>
пожалуйста, заранее сообщите мне, чтобы правильно привязать список к dataGrid