C# 如何使用SelectedIndexChanged事件在列表框中移动项目,并仅选择项目的一部分?
这是如何在项目中移动并在标签中显示它们的代码:C# 如何使用SelectedIndexChanged事件在列表框中移动项目,并仅选择项目的一部分?,c#,C#,这是如何在项目中移动并在标签中显示它们的代码: private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { label4.Text = listBox1.SelectedItem.ToString(); } 但如果我有3个项目,例如: Url: http://www.cnet.com --- Localy KeyWord: cnet Url: http
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
label4.Text = listBox1.SelectedItem.ToString();
}
但如果我有3个项目,例如:
Url: http://www.cnet.com --- Localy KeyWord: cnet
Url: http://www.google.com --- Localy KeyWord: google
Url: http://www.microsoft.com --- Localy KeyWord: microsoft
然后我想在label4中只显示每个项目的url,如果在label4中的第一个项目上有im,我将只看到第二个项目上的im,所以label4将只显示,依此类推…在label4中只显示网站地址部分。我想这是一个很长的解决方法,但它的工作原理是:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox1.SelectedItem != null)
{
label4.Text = listBox1.SelectedItem.ToString();
string startTag = "Url: ";
string endTag = " ---";
int startTagWidth = startTag.Length;
int endTagWidth = endTag.Length;
int index = 0;
index = label4.Text.IndexOf(startTag, index);
int start = index + startTagWidth;
index = label4.Text.IndexOf(endTag, start + 1);
string g = label4.Text.Substring(start, index - start);
label4.Text = g;
}
}
谢谢。您的URL格式是常量吗?允许使用什么后缀?这可以很容易地用正则表达式解决。列表框中的url是常量。用户可以向列表框中添加新的url,格式与上面相同,但列表框中的url不能更改。我的意思是,列表框中的url的任何后缀都可以包含我想从列表框中只包含url:和Localy关键字:google之间的部分,因此在label4中的exmaple中,它将是,但它可以是任何类型的url.Cyborgx37。在用户在列表框中进行选择后,我尝试了1_SelectedIndexChanged事件以使用label4.Text.IndexOf和label4.Text.Substring,但到目前为止没有任何成功。我做到了:label4.Text=listBox1.SelectedItem.ToString;inti=listBox1.Text.indexofur:;字符串t=label4.Text.Substringi;但是它不起作用,结果不是我想要的。放慢速度,试着用标点符号写一个完整的句子。此外,你应该更新你的问题,而不是用额外的信息淹没评论。见: