Вы можете выполнить это со стандартными элементами управления WPF. Это одна из самых больших частей WPF - она чрезвычайно гибкая (обычно без особых усилий). Вот пример того, что вы должны получить в правильном направлении:
<DataGrid AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="Selected"/>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Click Me!"
Command="{Binding myItemCommand}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Task"
Binding="{Binding TaskText}"/>
<DataGridTextColumn Header="Resources"
Binding="{Binding ResourcesText}"/>
<DataGridComboBoxColumn ItemsSource="{Binding AvailableStatuses}"
SelectedItemBinding="{Binding SelectedStatus}"
Header="Status" />
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<DataGrid ItemsSource="{Binding Resources}">
<DataGrid.Columns>
<DataGridCheckBoxColumn Binding="{Binding IsResourceUsed}"/>
<DataGridTextColumn Binding="{Binding ResourceName}"/>
</DataGrid.Columns>
</DataGrid>
</DataTemplate>
</DataGrid.RowDetailsTemplate>
После того, как вы получите внутри тега, как показано выше, вы можете поместить в значительной степени все, что контролирует внутри него, что вы хотите и они будут повторяться для каждой строки. Связывание для каждого элемента привязывается к любому объекту, который представляет строка, поэтому, если у вас есть список объектов задач, отображаемых вашим DataGrid, каждая задача в этом списке должна иметь свойства для привязки к TaskText, ResourceText и т. Д.
EDIT: Обновлен фрагмент кода, чтобы показать RowDetailsTemplate. Если RowDetailsTemplate с чем-то похожим на другой DataGrid внутри него не выполняет эту работу, вы всегда можете написать свой собственный многопоточный combobox, но он может быть довольно задействован, поскольку по умолчанию у него нет хорошего способа, который я знаю позволяют выбрать несколько элементов.
Похоже, что OP хочет присвоить MV для ресурсов. Но это можно решить и подключить к DataGridTemplateColumn. Pras вы должны спросить о MV combobox в отдельном вопросе. – Paparazzi
Тейлор: Спасибо за ответ. Это позволяет мне начать работу, но столбец «Ресурсы» не является текстом. Он должен быть выпадающим с помощью флажков. Blam: вы правы. Хотя я не уверен, что MV combobox будет иметь этот пользовательский интерфейс окна списка проверок. Скорее всего, это будет combobox с опцией multi select. в любом случае я могу добавить контрольный список в столбец Ресурсы? –
drats! в WPF нет элемента управления checkListBox: '( –