У меня есть DataGrid, привязанный к объекту PlacementData (PD). ПД имеет свойство "P_Unit".
public class PlacementData
{
public bool PIsChecked { get; set; }
public string PlacementHeader { get; set; }
public string P_NumberOfCases { get; set; }
public int P_Value1 { get; set; }
public int P_Value2 { get; set; }
public int P_Value3 { get; set; }
public int P_Value4 { get; set; }
public int P_Value5 { get; set; }
public string P_Unit { get; set; }
}
В моем DataGrid я добавил Combobox в DataTemplateColumn.
<DataGridTemplateColumn x:Name="UnitColumn1" Header="Unit" MinWidth="80" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox Text="{Binding P_Unit}">
<ComboBoxItem Content="kg/m3" IsSelected="True"/>
<ComboBoxItem Content="gm/cm3"/>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
В начале окна я установил источник элементов с 4 строками с добавленными заголовками.
private List<PlacementData> datagrid1CollectionData()
{
List<PlacementData> authors = new List<PlacementData>();
authors.Add(new PlacementData()
{
PlacementHeader = "Based On Injection Rate",
});
authors.Add(new PlacementData()
{
PlacementHeader = "Based On Viscosity"
});
authors.Add(new PlacementData()
{
PlacementHeader = "Based On Sheer Thinning"
});
authors.Add(new PlacementData()
{
PlacementHeader = "k"
});
return authors;
}
dataGrid1.ItemsSource = datagrid1CollectionData();
Каждой моей строке нужны разные значения для поля со списком Unit. Например, 1-я строка требует «кг, гм», 2-я — «метр, см, фут», 3-я — «л, мл, тонна», 4-я — пустая.
Как установить эти значения? Я думаю, что при создании каждой строки я могу создать список и назначить его флажку в качестве источника элемента. Но как это возможно в приведенном выше коде. Флажок Itemsource для каждой строки флажка ???