c# - 对要分配给 Combobox 的列表进行排序

标签 c# .net wpf .net-4.5 generic-list

我有一个字符串列表让我们说

List<string> mia = new list<string>;

我正在从数据库向它添加数据

using (SqlCommand command = new SqlCommand("SELECT xyz FROM table",sqlConnection1))
{
     sqlConnection1.Open();
     using (SqlDataReader reader = command.ExecuteReader())
     {
          while (reader.Read())
          {
               mia.Add(reader["xyz"].ToString());
          }

     }
     sqlConnection1.Close();                     
}

数据添加成功

combobox.ItemsSource =mia;

即使这样也很好

但是当我尝试做的时候

comboOpthol.ItemsSource =mia.Sort();

intellisense 抛出错误无法将类型“void”隐式转换为 System.collections.IEnumerable。为什么会出现此错误。我的列表有所有数据,那为什么显示无效? list is defined list 有什么问题吗?

最佳答案

因为 Sort() 方法没有返回值(它就地排序列表并返回 void)。您需要先排序,然后将列表分配给项目来源:

mia.Sort();
comboOpthol.ItemsSource = mia;

关于c# - 对要分配给 Combobox 的列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14414765/

相关文章:

c# - Wpf - TabItem 标题中的上下文菜单

c# - 使用大量文本更新多行文本框的最快方法

c# - 包含数组的结构体的大小

c# - 在 C# 中使用 Clay 构建转储对象

c# - 无法使用 C# 从具有用户管理标识的 Azure Key Vault 下载证书

c# - 解密AES密文

.net - LINQ GroupBy,将一对一列表转换为一对多

c# - 如何让 XMLSerializer 将 namespace 添加到嵌套对象中的属性?

c# - 如何停止在 wpf 数据网格上拖动选择

c# - 复选标记在菜单中显示为黑框