使用一些数据填充ComboBox,然后读取所选行

时间:2016-03-20 13:43:08

标签: c# winforms combobox

美好的一天。我想完成以下任务:

在C#WinForm中我有一个ComboBox。

在本地数据库中我有一些"组"执行后成为" D://" (他们五岁)

之后在所有文件夹中我都有一些文件(编号各不相同)

我不知道如何使用这些文件的名称填充ComboBox,然后在按下按钮时我需要与ComboBox中选择的名称进行交互。

我完全不知道如何做到这一点。我不乞求任何代码(虽然它会很受欢迎)我只是想要指南(做"这"首先他们你可以做"那"最后你做& #34;那")我将完成剩下的工作。只是我无法弄明白。谢谢大家!

2 个答案:

答案 0 :(得分:0)

首先获取类似这样的文件的名称:

string[] files=Directory.GetFiles("//path");

现在,您在上面给出的特定文件夹中有一个包含所有文件名的数组。现在使用此字符串并将其填充到类似这样的组合框中。

foreach(string file in files){
   comboBox1.Items.add(file);
}

之后,您必须在组合框后面创建事件。如果拖动组合框,则可以通过转到属性来创建其事件。然后在组合框后面的项目选择事件后面编写类似这样的代码。

protected void combobox(bla bla)
{
     if(comboBox1.SelectedItem == "An item")
          //Do whatever
      //it maybe selectedItem or selectedText or something like this
}

我粗略编码,因此可能包含一些错误。

答案 1 :(得分:0)

基于我所做的帮助:

public string seltest = null;
string group1 = GroupsDBForm.gone;
string[] tests1 =
            Directory.GetFiles("D:\\Riddler\\groups\\" + group1).Select(path => Path.GetFileName(path)).ToArray();
        foreach (string t1 in tests1)
        {
            test_list.Items.Add(group1+"\\"+t1);
        }
private void begin_test_btn_Click(object sender, EventArgs e)
    {
        seltest = "D:\\Riddler\\groups\\" + test_list.Text;
        Do_Test_Form DoTest = new Do_Test_Form();
        DoTest.ShowPath = seltest;
        DoTest.MdiParent = this.ParentForm;
        DoTest.Show();
    }

(那些是与问题相关的项目的部分,因为它们与其他部分相连可能不那么简单,所提到的其他名称也是如此)

我知道它远不是最好的代码,但它有效。我发布它,如果这帮助另一个接近这个问题的人!

再次感谢Jamil!