Я нашел способ встроить элементы управления в заголовки столбцов GridView.Однако я не знаю, как найти элементы управления, используя мой код, чтобы заполнить их элементами.Я выяснил, как реагировать на событие, вызванное встроенным элементом управления, и определить, в каком столбце оно находится. В противном случае я не знаю, как получить ссылку на встроенные списки.
Некоторый код, который может дать вамИдея:
<Page.Resources>
<DataTemplate x:Key="ComboHeaderTemplate">
<DockPanel>
<ComboBox Name="columnHeading" />
</DockPanel>
</DataTemplate>
</Page.Resources>
И в коде:
GridView grdView = new GridView();
for (int column = 1; column <= context.data.GetLength(1); column++)
{
GridViewColumn gvc = new GridViewColumn();
gvc.DisplayMemberBinding = new Binding(column.ToString());
gvc.Header = column.ToString();
gvc.Width = 120;
gvc.HeaderTemplate = (DataTemplate)this.Resources["ComboHeaderTemplate"];
grdView.Columns.Add(gvc);
}
ListView1.View = grdView;
ListView1.ItemsSource = dt.DefaultView;
Если бы у каждого ComboBox был один и тот же список элементов для выбора, используя привязку данных, которая была бы хороша, покаЯ мог бы выбрать уникальные значения для каждого столбца.