110,539
社区成员
发帖
与我相关
我的任务
分享
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:Button ID="Button1" runat="server" Text="设置A" OnClick="Button1_Click" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="设置B" />
<br />
<br />
<asp:Button ID="Button3" runat="server" OnClick="Button3_Click" Text="回发测试" />
<br />
<br />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%= this.A %>
</ContentTemplate>
</asp:UpdatePanel>
<br />
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%= GetB() %>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
using System;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
this.A = "点击 Button1 时间是:" + DateTime.Now.ToString();
UpdatePanel1.Update();
}
public string A
{
get { return (string)ViewState["a"]; }
set
{
ViewState["a"] = value;
}
}
[Serializable]
public class BType
{
public string F1;
public DateTime F2;
public long F3;
}
public BType B
{
get
{
return (BType)ViewState["b"];
}
set
{
ViewState["b"] = value;
}
}
protected void Button2_Click(object sender, EventArgs e)
{
var obj = new BType
{
F1 = DateTime.Now.ToString(),
F2 = DateTime.Now,
F3 = DateTime.Now.Ticks
};
this.B = obj;
UpdatePanel2.Update();
}
protected void Button3_Click(object sender, EventArgs e)
{
//这里什么都不做,就是用来验证回发时,页面内容并不丢失
}
protected string GetB()
{
var se = new System.Web.Script.Serialization.JavaScriptSerializer();
return se.Serialize(this.B);
}
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:Button ID="Button1" runat="server" Text="设置A" OnClick="Button1_Click" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="设置B" />
<br />
<br />
<asp:Button ID="Button3" runat="server" OnClick="Button3_Click" Text="回发测试" />
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br />
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
</form>
</body>
</html>
using System;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
this.A = "点击 Button1 时间是:" + DateTime.Now.ToString();
}
public string A
{
get { return (string)ViewState["a"]; }
set
{
ViewState["a"] = value;
}
}
[Serializable]
public class BType
{
public string F1;
public DateTime F2;
public long F3;
}
public BType B
{
get
{
return (BType)ViewState["b"];
}
set
{
ViewState["b"] = value;
}
}
protected void Button2_Click(object sender, EventArgs e)
{
var obj = new BType
{
F1 = DateTime.Now.ToString(),
F2 = DateTime.Now,
F3 = DateTime.Now.Ticks
};
this.B = obj;
}
protected void Button3_Click(object sender, EventArgs e)
{
this.Label1.Text = this.A;
var se = new System.Web.Script.Serialization.JavaScriptSerializer();
this.Label2.Text = se.Serialize(this.B);
}
}
请打开你看到过的随便一个 asp.net 入门教程,翻到 ViewState 那一章,仔细阅读。<input id = "test" runat="server" type="hidden">
后台可以直接获取到test
然后设置它的value值。
public string url
{
get
{
object o = ViewState["url"];
return o == null ? string.Empty : o.ToString();
}
set
{
ViewState["url"] = value;
}
}
类似这种东西 来保持"页面变量",.
不过LZ应该选用asp.net分页控件aspnetpager .这个自己写没意义...