【问题标题】:C#, Linq, Entity Framework ComboboxC#、Linq、实体框架组合框
【发布时间】:2018-02-20 22:09:19
【问题描述】:

我目前遇到一个似乎无法解决的问题。我创建了一个方法,在其中传入一个组合框对象,构建一个 Linq 查询并将 ItemsSource 绑定到查询结果。我在 VB.Net 中非常成功地做到了这一点。但是在 C# 中,当我调试应用程序并下拉组合框时,我看到以下内容: System.Data.Entity.DynamicProxies.ReferenceGroup_FEA77E50BE7F55D3AD4A32EC3E42F6 如果我选择该条目,则正确的 DisplayPath 和 Selected Value Path 工作正常。选择上述引用后,组合框显示正确的“地址”。

LINQ 查询:

    var source = (from g in adminEntities.ReferenceGroups
                  orderby g.ReferenceGroupName
                  select g);

   objSource.ItemsSource = source.ToList();
   return objSource;

组合框 XAML 定义:

    <ComboBox Name="cboGroups" Grid.Column="1" Grid.Row="0" 
      HorizontalAlignment="Stretch" VerticalAlignment="Center" Margin="5"  
      SelectionChanged="cboGroups_SelectionChanged"
      DisplayMemberPath="ReferenceGroupName"
      SelectedValuePath="ReferenceGroupID"/>

这种行为在 C# 和 VB.Net 之间是不同的。任何帮助将不胜感激。

【问题讨论】:

  • 您正在设置 objSource 的 ItemsSource,然后将其返回。你在做什么?组合框的名称为 cboGroups 而不是 objSource。 objSource 和 cboGroups 有什么关系?请创建一个最小的完整示例
  • public ComboBox PopulateComboBox(ComboBox objSource, String dataSource) { try { var source = (from g in adminEntities.ReferenceGroups orderby g.ReferenceGroupName select g); objSource.ItemsSource = source.ToList();返回对象源; } catch (Exception ex) { } return objSource; }
  • @user1756895:评论真的不是粘贴代码的地方。更新问题。

标签: c# wpf entity-framework linq combobox


【解决方案1】:

我已经解决了我的问题。组合框条目的显示与我的 WPF 主题和控件样式有关。

【讨论】:

    猜你喜欢
    • 2017-07-07
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多