2010-06-12 45 views
0
  Employee emp = new Employee(); 
      comHandledBySQt.DataSource = emp.GetDataFromTable("1"); 
      comHandledBySQt.DisplayMember = "FirstName"; 

以上代码在组合框中显示员工名字的下拉列表。我想要显示名字和姓氏。我该怎么做?使用来自各个列的值通过数据源填充组合框

我试图包括两列FirstName和LastName如下,但没有工作。

comHandledBySQt.DisplayMember = "FirstName" + " " + "LastName"; 

任何帮助将不胜感激。

回答

1

如果您需要立即与数据源进行绑定,您需要为此创建一个自定义视图。或者你可以迭代从emp.GetDataFromTable()返回的行,并将每行添加到DropDown中,并使用string.Format()或一些字符串操作。

1

最简单的方法是选择一个你想要的值的匿名对象。

Employee emp = new Employee(); 
    comHandledBySQt.DataSource = from x in emp.GetDataFromTable("1") 
        select new { x.Id, Name = x.FirstName + " " + x.LastName }; 
    comHandledBySQt.DisplayMember = "Name"; 
    comHandledBySQt.ValueMember = "Id"; 
+0

我对Linq并不是很熟悉。我得到这个错误: “无法转换lambda表达式到类型‘串’,因为它不是一个委托类型” - 关键字选择成为蓝色 强调,能否请您咨询。谢谢 – peace 2010-06-12 20:36:39

相关问题