0
我絕對困惑。 我嘗試更改文本框的默認文本。c#asp文本框文本只在TextBox爲只讀時從代碼後面改變
這裏有一個簡單的代碼來重現問題。
TextBox Textbox1和標籤在任何點擊按鈕時都會更新。 Textbox var將永遠不會更新。只在第一頁PageLoad。
問題是,我必須從代碼後面添加我的文本框,而不是在aspx頁面中。
任何想法發生了什麼以及如何讓它工作?
%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="tbtester.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div >
<asp:Panel ID="mypanel" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
</asp:Panel>
</div>
</form>
</body>
</html>
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace tbtester
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
System.Web.UI.WebControls.TextBox var = new System.Web.UI.WebControls.TextBox();
//if (!this.Page.IsPostBack)
Label test = new Label();
mypanel.Controls.Add(test);
mypanel.Controls.Add(var);
var.Text = DateTime.Now.ToLongTimeString();
test.Text = DateTime.Now.ToLongTimeString();
var.ReadOnly = false;
TextBox1.Text = DateTime.Now.ToLongTimeString();
}
}
}
只讀默認情況下禁用。該線只用於調試。當啓用只讀時,文本框將會更新,但用戶無法在其瀏覽器中更改該值。它有點瘋狂。 – user2310654 2013-04-23 14:07:04