2013-04-18 108 views
0

我正在使用实体框架和数据绑定来管理数据库中的PRODUCT和BRAND,并使用WPF。 PRODUCT包含一个BrandID属性。为了在DataGrid的ID,而不是显示一个品牌,我用这样的DataGridComboBoxColumn:将组合框选定项目内容绑定到元素

C#

gridProducts.DataContext = this.DbContext.Products; 
brandColumn.ItemsSource = this.DbContext.Brands; 

XAML

<DataGrid Name="gridProducts" IsSynchronizedWithCurrentItem="True" 
      RowEditEnding="dg_RowEditEnding" ItemsSource="{Binding}" > 
    <DataGrid.Columns> 
    ... 
    <DataGridComboBoxColumn Header="BRAND" x:Name="brandColumn" DisplayMemberPath="BrandName" 
     SelectedValuePath="ID" SelectedValueBinding="{Binding Path=BrandID}" /> 
</DataGrid.Columns> 
<DataGrid> 

它工作正常。但现在我需要将组合框选定的值绑定到文本框文本中。我尝试这样做:

XAML

<TextBox Name="brand" Text="{Binding Path=SelectedValue.Content, 
     ElementName=brandColumn}"/> 

但它不工作。任何想法如何在文本框中绑定组合框选定的值(BrandName - 不是BrandID)?

+0

这是回答您的问题吗? http://stackoverflow.com/questions/561166/binding-wpf-combobox-to-a-custom-list –

回答

0

不是在xaml中绑定它,而是在entity/viewmodel中创建一个公共属性并将其绑定到该属性。

相关问题