<form id="form1" runat="server">
Language:<br />
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True"
onselectedindexchanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Value="English">English</asp:ListItem>
<asp:ListItem>Spanish</asp:ListItem>
</asp:DropDownList>
<asp:Label id="eng_lblContent" runat="server" >english content</asp:Label>
<asp:Label id="sp_lblContent" runat="server" >spanish content</asp:Label>
</form>
後面的代碼:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
ChangeLanguage();
}
private void ChangeLanguage()
{
foreach (var item in form1.Controls)
{
Control c = (Control)item;
c.Visible = false;
if (c.ID.StartsWith("eng")) //error : Object reference not set to an instance of an object.
{
c.Visible = true;
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
ChangeLanguage();
}
錯誤: 在這一行有錯誤:
if (c.ID.StartsWith("eng")) // Object reference not set to an instance of an object.
動態創建的控件或爲什麼你不做eng_lblContent.Visible = True?此外,你應該閱讀有關本地化http://msdn.microsoft.com/en-us/library/vstudio/c6zyy3s9(v=vs.100).aspx – Esko 2014-09-22 04:53:08
我有這麼多的網絡形式的控制 – 2014-09-22 04:55:09
你只是想檢測'標籤'控制? – Usman 2014-09-22 05:02:13