我有一个文本框,一个添加按钮,一个创建按钮和一个列表框。目前,当我在文本框中输入文本并单击添加按钮时,文本随后出现在列表框中。当我单击“创建”按钮时,它会在消息框中显示列表框中的文本/项目。但我希望能够在列表框中输入4或5个项目,当我单击创建按钮时,它会在消息框中的列表框中显示一个随机项目。
例如,说Dean,Sam,Jess是列表框中的项目,当我单击创建按钮时,我希望它在消息框中显示其中一个项目,但我希望每次单击时它都是随机项目创建按钮,一次只有一个项目。但是列表框中的项目并不总是具有相同的名称,因此我无法将字词设置为字符串,因为我希望用户能够将他们喜欢的内容输入到列表框中。所以我只能将输入到文本框中的内容串起来。
这是一些代码,我已经将列表框的代码留空了,因为我不知道该怎么做,但我知道这可能是我需要工作的地方
private void btnadd_Click(object sender, EventArgs e)
{
stringname = textBoxname.Text;
textBoxname.Clear();
listboxname.Items.Add(stringname);
}
private void listboxname_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void buttoncreate_Click(object sender, EventArgs e)
{
MessageBox.Show(stringname);
}
答案 0 :(得分:0)
如果我理解得很好你只想每次从ListBox中随机显示?
使用随机数选择随机项。
Random random = new Random();
int randomNumber = random.Next(1, listboxname.Items.Count);
listboxname.Select();
listboxname.SelectedItem = listboxname.Items[randomNumber];
MessageBox.Show(listboxName.SelectedItem.ToString());
答案 1 :(得分:0)
假设你的单词分隔符是一个空格:
Random rand=new Random();
private void buttoncreate_Click(object sender, EventArgs e)
{
//Splits your string on space, turning it in an array
var arrayOfWords=(textBoxname.Text).Split(' ');
//Picks a random word on the array
MessageBox.Show(arrayOfWords[rand.Next(arrayOfWords.Count()]);
}