【发布时间】:2016-09-09 14:08:35
【问题描述】:
我正在尝试将一系列行加载到包含其他表的外键的 DataGrid 中。在这种特定情况下,行有一个 TransactionTypeID(TransactionTypes 表的外键),我希望我的 ComboBox(ItemsSource 是 Transactions 表中的 DataView 类型)正确显示并允许修改。
<DataGridTemplateColumn Header="Transaction Types">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="Need ComboBox SelectedText here!"></TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding DataContext.TransactionTypes, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
DisplayMemberPath="Description"
SelectedValuePath="ID"
SelectedItem="{Binding TransactionTypeID}"></ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
ComboBox SelectedItem 似乎不起作用,我不知道如何填充 TextBlock 文本。
【问题讨论】:
-
你能描述一下 ComboBox SelectedItem 似乎不起作用的原因吗?
-
@EdPlunkett 组合框没有选择。
-
您从列表中选择了一个项目并且组合框保持空白?
-
@EdPlunkett 不,该行的默认选择不会被填充。
标签: c# wpf data-binding datagrid