c#从数据库向组合框添加项目
我想用数据库中的项目填充组合框我这样做:c#从数据库向组合框添加项目,c#,wpf,linq,combobox,user-controls,C#,Wpf,Linq,Combobox,User Controls,我想用数据库中的项目填充组合框我这样做: public partial class addAssoc : Window { private libraryDBEntities1 context; public addAssoc() { InitializeComponent(); } private void Window_Loaded(object sender, RoutedEventArgs e) { co
public partial class addAssoc : Window
{
private libraryDBEntities1 context;
public addAssoc()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
context = new libraryDBEntities1();
System.Windows.Data.CollectionViewSource libraryDBEntities1ViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("libraryDBEntities1ViewSource")));
// Load data by setting the CollectionViewSource.Source property:
// libraryDBEntities1ViewSource.Source = [generic data source]
var q = from b in context.textbooks
select b.Title;
foreach(var item in q){
titleComboBox.Items.Add(item);
}
}
}
}
这似乎是部分工作,我可以悬停在组合框中的项目,它们会突出显示,但它们没有文本。这是什么原因?任何帮助都将不胜感激。我正在使用wpf
<ComboBox x:Name="titleComboBox" Width="120" VerticalAlignment="Center" Grid.Row="0" Margin="3" ItemsSource="{Binding}" Height="Auto" HorizontalAlignment="Left" DisplayMemberPath="Title" Grid.Column="1">
通过添加
ItemsSource={Binding}
您告诉组合框将其DataContext用作ItemsSource
请删除此项,然后重试。此外,我建议继续阅读
编辑:同时删除
DisplayMemberPath='Title'
windows窗体?还是wpf?标题是字符串吗?请向我们展示组合框的xaml。是的,标题是varchar,所以是字符串,我猜?多亏了xaml才是问题所在,我试图通过从模型拖放数据源来添加项,但这不起作用,之后我试图用foreach手动将它们添加到数据绑定(?)组合框中,但这不起作用,不管是什么原因,微软。我猜不应该这样做?无论如何,在添加了一个全新的组合框后,一切都正常,谢谢大家=)非常感谢