Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果使用datatable,则建议列表和组合框存在问题_C#_List_Combobox - Fatal编程技术网

C# 如果使用datatable,则建议列表和组合框存在问题

C# 如果使用datatable,则建议列表和组合框存在问题,c#,list,combobox,C#,List,Combobox,我想在combobox下设置一个建议列表。如果使用,代码可以正常工作 collections=新字符串[]{“值1”、“值2”、“值3”、“值4”} 对于建议列表中的项目,但是如果我使用 collections=dtRecord.Rows.OfType().Select(k=>k[0].ToString()).ToArray() 建议列表显示在应用程序开始时的所选项目。如何更改代码,使建议列表仅在用户单击组合框后显示? 我用于建议列表的代码如下: private void comboBox1_

我想在combobox下设置一个建议列表。如果使用,代码可以正常工作

collections=新字符串[]{“值1”、“值2”、“值3”、“值4”}

对于建议列表中的项目,但是如果我使用

collections=dtRecord.Rows.OfType().Select(k=>k[0].ToString()).ToArray()

建议列表显示在应用程序开始时的所选项目。如何更改代码,使建议列表仅在用户单击组合框后显示? 我用于建议列表的代码如下:

 private void comboBox1_TextChanged(object sender, EventArgs e)
        {
            string[] result = new string[] { "" };
            string textToSearch = cbStZdrDis.Text.ToLower();
            listBox1.Visible = false; 
            if (String.IsNullOrEmpty(textToSearch))
                return;         
                result = (from i in collections where i.ToLower().Contains(textToSearch) select i).ToArray();
                if (result.Length == 0)
                    return;         
            listBox1.Items.Clear(); 
            listBox1.Items.AddRange(result);
            listBox1.Visible = true;
        }
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            cbStZdrDis.SelectedItem = listBox1.SelectedItem;
            listBox1.Visible = false;
        }
    }