C# 从列表框中选择随机项,并在第二个列表框中选择相关项

C# 从列表框中选择随机项,并在第二个列表框中选择相关项,c#,button,random,textbox,listbox,C#,Button,Random,Textbox,Listbox,我在两个列表框中有两组项目列表框1列出的项目如下: red yellow blue 而listBox2包含以下项目: 1 2 3 每个列表框中有三个以上的项目。我还有两个文本框,textBox1和textBox2。我已经成功地让listBox1中的一个随机项目显示在textBox1中,现在我正试图用一个按钮检查textBox2中由用户手动输入的文本是否与listbox2中的相应项目相匹配 到目前为止,我已经: Random random = new Random(); int a; int

我在两个列表框中有两组项目<代码>列表框1列出的项目如下:

red
yellow
blue
listBox2
包含以下项目:

1
2
3
每个列表框中有三个以上的项目。我还有两个文本框,
textBox1
textBox2
。我已经成功地让
listBox1
中的一个随机项目显示在
textBox1
中,现在我正试图用一个按钮检查
textBox2
中由用户手动输入的文本是否与
listbox2
中的相应项目相匹配

到目前为止,我已经:

Random random = new Random();
int a; int n;
private void button1_Click(object sender, EventArgs e)
{
    n = listBox1.Items.Count;
    a = random.Next(n);
    textBox1.Text = listBox1.Items[a].ToString();
}

private void button2_Click(object sender, EventArgs e)
{
    //unsure
}
我试图让
按钮2
检查
textBox2
是否在
listBox2
中输入了正确的对应项,如果正确,则显示某种消息。我是这方面的初学者,但我认为如果我能得到正确的代码,我已经充分掌握了如何处理if/else消息


如何检查此类链接?

您需要将它们与if语句进行比较

if (thing1 == thing2) {
    //do things
}
因此我们知道thing1是listbox2中当前选中的项目,thing2是textbox2的文本

您可以通过文本抓取它们中的文本

if (textbox2.Text == listbox2.Text) {
   //do stuff
}
如果要检查输入的文本是否在任何选项中,则需要使用.contains

if (listbox2.items.contains(textbox2.Text) {
   //do stuff
}

假设它是一个WPF应用程序,并且您用字符串填充了列表框,那么您可以获得文本框的文本属性值和列表框的Items属性值。Items属性将返回一个ItemCollection,您可以使用像这样的Contains方法:listBox2.Items.Contains(textBox2.Text)来返回true或false

类似的方法也适用于WinForms应用程序,只是您使用的.NET framework中的类不同,例如,本例中的list box Items属性返回ListBox.ObjectCollection。这两个库都提供了相关的文本、项和包含的属性/方法


在这两种情况下,都可以使用MessageBox.Show()方法来显示相应的方法。

如果语句在
按钮2\u单击
?我收到一个“非发票成员”文本框。文本不能像方法一样使用。错误。另外,当
textBox1
listBox1
接收到随机选择的文本时,
按钮2
如何知道检查
listBox2
的确切对应编号(如果尚未选择该编号)?对不起,我认为它只是文本而不是文本()。这个错误意味着你试图使用一个属性(上面没有()的属性)像一个方法一样(它有一个()的属性,因为你可以向它传递参数。)你的答案与我想要的非常接近。我仍然遇到的问题是,如果
textBox1
listBox1
中的第二项随机放置在其文本中,
按钮2
只有在用户准确输入
textBox2
第二项在
listBox2
中时才会返回true。此方法能够做到这一点吗?ItemCollection也可以像这样访问:items[index]。因此,您可以从listBox1中获取索引值,在您的情况下,它是a,并执行类似这样的操作:listBox2.items[a]。Equals(textBox2.Text)。完美!我想知道如何使用[a]来识别这两个项目。非常感谢你。