我只是想知道,如果onSelectedChange
事件后声明不满意,是否有人可以告诉我如何删除一段文字。
我的代码,
protected void currency_SelectedIndexChanged(object sender, EventArgs e)
{
if (stm_currency.SelectedItem != null)
{
lblResults.Text = "" +
stm_merchant.SelectedItem.Text + " statement for " +
stm_month.SelectedItem.Text + " " +
stm_year.SelectedItem.Text;
}
else
{
lblResults.Text.Remove(0);
}
}
答案 0 :(得分:0)
更改此行代码
lblResults.Text = "";
它会将其设置为空字符串。
答案 1 :(得分:0)
remove方法返回一个新字符串,其中删除了从指定位置开始的当前实例中指定数量的字符。
http://msdn.microsoft.com/en-us/library/d8d7z2kk(v=vs.110).aspx
您应该使用lblResults.Text = "";
或lblResults.Text = string.Empty;
答案 2 :(得分:0)
您应该检查标签是否需要先调用。
delegate void setLabelText(string s);
public void invokeSetLabelText(string s)
{
if (this.lblResults.InvokeRequired)
{
setLabelText d = new setLabelText(invokeSetLabelText);
this.Invoke(d, new object[] { s });
}
else
lblResults.Text = s;
}
protected void currency_SelectedIndexChanged(object sender, EventArgs e)
{
if (stm_currency.SelectedItem != null)
invokeSetLabelText(string.Format("{0} statement for {1} {2}",
stm_merchant.SelectedItem.Text,
stm_month.SelectedItem.Text,
stm_year.SelectedItem.Text));
else
invokeSetLabelText(string.Empty);
}