2016-01-28 191 views
0

另一个问题,这一个我不认为是像上次一样简单的双。使列表框选择选择多个列表框c#

我正在创建一个列表框,我只希望用户能够从中选择一个选项,并且因为它改变了表单旁边的其他2个选定状态。问题是,我不知道如何拉第一个列表框中选择的内容。

我使用

private void workshopSelect_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    for (int i = 1; i != 5; i++) { 
     if (workshopSelect.GetSelected == i){ 
      NoDBox.SetSelected(i, true); 
      feeBox.SetSelected(i, true); 
     } 
    } 
} 

试过,但workshopselect.getselected有红squigglies。它说,==运算符不能使用,它“返回一个值,指示是否指定的项目被选中”我尝试使用(workshopSelect.GetSelected[i])没有工作,尝试使用(workshopSelect.GetSelected(i))也没有工作。

程序应该是这样的,当我选择研讨会线 program end result

之一,所以我的真正的问题是,只是究竟是什么我用它来检查选择了什么样线的盒子?

+1

[阅读文档](https://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.getselected%28v=vs.110%29.aspx)了解该方法是否,如何使用它,它返回什么,以及它是否可能做你需要它做的事情。 –

+0

啊..谢谢,这有助于我的书大声笑。我找不到那些信息。谢谢:) –

+0

没问题,约翰。 MSDN是一个很好的资源。 –

回答

1

您应该使用SelectedItem属性而不是GetSelected来获取选定的项目。 或SelectedIndex获取索引。

if (listbox1.SelectedItem.ToString() == "Supervision skill") 
... 

if (listbox1.SelectedIndex == 1) ... 
+0

事情是这样的,我试图限制我在这里有多少行代码,我只想要5或6,而不是20+有一个if语句为每个单独的字符串会更容易思考,真实,但它会占用更多的空间,我不想使用它。 - 刚刚注意到了上半场,对于selectedIndex来说也是如此,就像我现在做的那样。 –

0

的原因,我的if (workshopSelect.GetSelected(i))没有工作,因为好..我忘了一个简单的事情,搞清楚,因为它说,==操作符是不允许(它是)。这是因为一旦我改变了这个,我不得不像这样打出if (workshopSelect.GetSelected(i) == true),这正是我想要的。