2013-11-21 55 views
0

什么是vba中组合框的.List属性的“对象类型”?当我将它当作一个字符串数组对待时,我在访问这些项目时遇到了相当的困难。如何访问组合框中的项目列表

比方说,我想通过列表,并检查是否有任何项目匹配某个字符串,我会怎​​么做呢?

+0

does [**'this' **](http://vba4all.wordpress.com/category/vba-macros/two-column-listbox-userform-and-saving-results-to-spreadsheet/)help您? – 2013-11-21 08:01:39

+0

它是一个用户窗体上的组合框? – 2013-11-21 08:08:26

+0

什么应用程序?它是'列表框'还是'组合框'? –

回答

0

Levraininjaneer,我想我可能对你有一些帮助...

我做了一个窗户,组合框,一个按钮,一个列表框形成...组合框中有一些项目,像第1项至第3项, “ABC”, “DEF”, “GHI” ......

WinForm

现在,你说你要访问你的列表中的项目?那么,尝试了这一点...

string[] array = new string[comboBox1.Items.Count]; 
     int itemCount = comboBox1.Items.Count; 


      for (int i = 0; i < itemCount; i++) 
      { 
       array[i] = (string)comboBox1.Items[i]; 
       string item = array[i].ToString(); 
       this.listBox1.Items.Add(item); 
      } 
MessageBox.Show(array[1]); 
MessageBox.Show(array[4]); 

,它会做这样的:

enter image description here

和消息框在代码的底部会显示“项目2” &“DEF”

如果你想“拯救”的项目的实例在列表框中,你也可以做这样的:

string arrayItem = array[3].ToString(); 
     MessageBox.Show(arrayItem); 

这将显示一个消息框,指出“ABC”作为索引([square]括号中的数字,它通常从0开始...因此,如果您将array [1]。它不是第一个项目,它实际上是第二个项目...如果你想获得的最后一个项目,如果有6个项目,这将是:

array[5]; 

还有,如果你想检查是否有对象包含某些字符串,你总是可以使用一个字符串的方法。载

.Contains("Item") 

希望这有助于:)

Win10Pro(64) 的Visual Studio 2015年社区 C# WindowsForm项目

相关问题