我有这个项目,我希望通过其textbox1
about.aspx
上的会话“sam”从label
传输数据。问题是,当我输入一个数字时,它不会显示在label
上。我的问题是我在“ΑριθμόςΕπιβατών:”textbox
(例如一个数字)上键入内容,之后我点击提交我需要在“Ari8mos epivatwn:”旁边的页面上获取数字
Defaultaspxcs.txt:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication4
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click2(object sender, EventArgs e)
{
string txt = TextBox1.Text;
Session["sam"] = txt;
}
}
}
Aboutaspxcs.txt:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication4
{
public partial class About : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = (string)Session["sam"];
}
}
}
Aboutaspx.txt:
<%@ Page Title="About Us" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="About.aspx.cs" Inherits="WebApplication4.About" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<p>
Ari8mos epivatwn :
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</p>
</asp:Content>
答案 0 :(得分:0)
标签的内容可能会被写入两次,而不是按照您期望的顺序。
您会注意到PageLoad
之前很久就会调用Render
。
因此,页面加载如下:
PageLoad
标签文字设置为代码中的某个数字Render
将Label文本设置为“Label”,因为这是您在chtml中定义的内容。查看代码的这一部分:
...
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
...
请改为尝试:
...
<asp:Label ID="Label1" runat="server"></asp:Label>
...