Мне нужно заполнить combobox в таблице данных из моей базы данных
<DataGrid x:Name="GrdSubjectSched" HorizontalAlignment="Right" AutoGenerateColumns="False" VerticalAlignment="Top" MaxHeight="325" Width="660" Canvas.Left="10" Canvas.Top="52" Height="320" FontFamily="Times New Roman" > <DataGrid.Columns> <DataGridTextColumn Header="ID" Width="30"/> <DataGridTemplateColumn Header="Saturday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Sat}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbSunSubs" SelectedItem="{Binding Sat}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Sunday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Sun}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbSunSubs" SelectedItem="{Binding Sun}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Monday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Mon}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbMonSubs" SelectedItem="{Binding Mon}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Tuesday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Tues}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbTuesSubs" SelectedItem="{Binding Tues}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Wedensday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Wed}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbWedSubs" SelectedItem="{Binding Wed}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Thursday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Thur}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbThurSubs" SelectedItem="{Binding Thur}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn Header="Friday" Width="90"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Fri}"></TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="CbFriSubs" SelectedItem="{Binding Fri}"></ComboBox> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> </DataGrid.Columns> </DataGrid>
Раньше я заполнял сетку
ObservableCollection<Week>();
а неделя такая
public class Week { public string Sat { set; get; } public string Sun { set; get; } public string Mon { set; get; } public string Tues { set; get; } public string Wed { set; get; } public string Thur { set; get; } public string Fri { set; get; } }
SchedCollection.Add(new Week() { Sat = day1, Sun = day2, Mon = day3, Tues = day4, Wed = day5, Thur = day6, Fri = day7 }); } GrdSubjectSched.ItemsSource = SchedCollection;
Что я уже пробовал:
Я перенес данные из базы данных в набор данных
private void FillComboSubjectSelection() { SelectSubjecDataSet.Clear(); var con1 = new SqlConnection(Connectionstring); SqlCommand cmd1; cmd1 =new SqlCommand("SELECT Distinct[subname] FROM [DB_SchoolManager].[dbo].[tbl_week_subjects]",con1); SqlDataAdapter da1; da1 = new SqlDataAdapter(cmd1); da1.Fill(SelectSubjecDataSet); }
Проблема в том, что я не могу добраться до combobox в datagrid, чтобы заполнить его именем каждую комбинацию в каждом столбце, но я не могу найти ее, когда пишу код
Я хочу, чтобы каждая комбинация содержала те же данные из базы данных, что и запрос ниже