[英]How to create new string each time new item is created?
我有一个文本框,一个添加按钮,一个创建按钮和一个列表框。 目前,当我在文本框中输入文本并单击“添加”按钮时,文本将出现在列表框中。 当我单击创建按钮时,它将在消息框中显示列表框中的文本/项目。 但是我希望能够在列表框中输入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);
}
如果我了解得很好,您只是想每次都从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());
假设您的单词分隔符是一个空格:
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()]);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.