我的 C# 代码遇到问题..
我想用这段代码做的是,当我从文本框中输入具有相同符号(相同名称)的内容时,它显示我无法将其添加到列表框中两次或多次。所以我编写了这段代码:
void Btn_addClick(object sender, EventArgs e)
{
string thelist = listBox1.Text;
string text = textBox1.Text;
if(text == thelist)
{
MessageBox.Show("This name already exists!");
}
else
{
listBox1.Items.Add(textBox1.Text);
textBox1.Text = "";
}
}
Run Code Online (Sandbox Code Playgroud)
但问题是,只有当我从列表中选择名称并从文本框中进行比较时,它才会显示消息框。如果我不选择任何内容或其他单词,它会添加相同的单词而不告诉它已经存在。
您正在尝试将您的TextBox.Text与整个ListBox. 您可能想知道其中是否ListBox 包含您正在输入的文本。
下面将很容易达到你想要的结果:
void Btn_addClick(object sender, EventArgs e)
{
if(listBox1.Items.Contains(textBox1.Text))
{
MessageBox.Show("This name already exists!");
}
else
{
listBox1.Items.Add(textBox1.Text);
textBox1.Text = "";
}
}
Run Code Online (Sandbox Code Playgroud)