aspx文件里,要给Label的text内容调用cs里面的文件怎么处理?

时间:2022-01-29 17:29:53
例如<asp:Label ID="pmpPassport" runat="server" Text="????"></asp:Label>
这里的????应该怎么写?

28 个解决方案

#1


在cs里写啊``

#2


我听不懂
你要问的是不是说在.aspx 页面动态给这个Label控件赋值
.aspx页面
<asp:Label ID="pmpPassport" runat="server" Text=<%=GetlblText()%>> </asp:Label> 

.cs
public static string GetlblText()
{
  string strContect="这是.cs文件值";
return strContect;
}
这样就可以了

#3


this.pmpPassport.Text = "Lable value";

#4


引用 2 楼 tiancaolin 的回复:
我听不懂 
你要问的是不是说在.aspx 页面动态给这个Label控件赋值 
.aspx页面 
<asp:Label ID="pmpPassport" runat="server" Text= <%=GetlblText()%>>  </asp:Label>  

.cs 
public static string GetlblText() 

  string strContect="这是.cs文件值"; 
return strContect; 

这样就可以了

#5


this.pmpPassport="你要賦的值";

#6


錯了,不好意思!
應該是:this.pmpPassport.Text="你要賦的值";

#7


cs文件里写不是很容易吗?

pmpPassport.Text = "xxx";

#8


function JsFunction()
{
    document.getElementById('pmpPassport').value = '动态值,如何取值我就不清楚了';
}
onXxxx = JsFunction();

#9


to 男兒流血不流淚:
您说的是我想要的方式,但我按这种方式写的时候报错,代码如下:
    <asp:Button ID="btnLoginSubmit" runat="server" Text=<%=gettitles("3")%>/>
    <asp:Button ID="btnReturn" runat="server" Text=<%=gettitles("4")%>/>
错误提示如下:

错误 1 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 20 57 E:\newb\
错误 2 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 21 52 E:\newb\
错误 3 服务器标记不能包含 <% ... %> 构造。 E:\newb\WebControl\user\uslogin.ascx 20
错误 4 服务器标记不能包含 <% ... %> 构造。 E:\newb\WebControl\user\uslogin.ascx 21

to 潇湘夜雨,我想要的方式是尽量避免在后期维护修改控件的文字标题的时候修改cs文件,所以,cs里面只封装一些公共的函数,而不直接对控件进行赋值。

#10


     <asp:Button ID="btnLoginSubmit" runat="server" Text=' <%=gettitles("3")%>'/> 
     <asp:Button ID="btnReturn" runat="server" Text= '<%=gettitles("4")%>'/> 

test=''把内容加到单引号里就行了

#11


引用 10 楼 gaofenfei 的回复:
      <asp:Button ID="btnLoginSubmit" runat="server" Text='  <%=gettitles("3")%>'/>  
      <asp:Button ID="btnReturn" runat="server" Text= ' <%=gettitles("4")%>'/>  

test=''把内容加到单引号里就行了 

不对,直接把代码gettitles("3")显示出来了

#12


.aspx页面

<asp:Label ID="pmpPassport" runat="server" Text=  '<% = lblTest1%>'>   </asp:Label>
.aspx.cs页面

string lblTest1 = ;

 protected void Page_Load(object sender, EventArgs e)
  {
    lblTest1 = lblTest.GetlblText();
    Response.Write(lblTest1);
 }


lblTest.cs文件
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// lblTest 的摘要说明
/// </summary>
public static class lblTest
{
    public static string GetlblText()
    {
        string strContect = "测试";
        return strContect;
    }  
}

#13


对不起,刚才写错了,你看按这个思路可以么
aspx页面

标题:<%=lblTest1 %>


aspx.cs页面

public string lblTest1 = ;

 protected void Page_Load(object sender, EventArgs e)
  {
    lblTest1 = lblTest.GetlblText();
    Response.Write(lblTest1);
 }
lblTest.cs文件

 public static string GetlblText()
    {
        string strContect = "测试";
        return strContect;
    }  

我觉得这样就可以了··不必使用lable

#14


顶13楼
直接在Label位置取变量值

#15


引用 13 楼 gaofenfei 的回复:
对不起,刚才写错了,你看按这个思路可以么 
aspx页面 

标题: <%=lblTest1 %> 


aspx.cs页面 

public string lblTest1 = ; 

 protected void Page_Load(object sender, EventArgs e) 
  { 
    lblTest1 = lblTest.GetlblText(); 
    Response.Write(lblTest1); 
 } 
lblTest.cs文件 

 public static string GetlblText() 
    { 
        string strContect = "测试"; 
        return strContect; 

非常感谢,您说的方式我试过,我直接使用<span><%=getTitles("2")%></span>方式已经可以了,但目前是有些控件,比如说button,我是想让它的按钮显示名称也动态从我配置的XML里面读取,但又不想在cs里写死按钮的ID,因为那样aspx页就不太方便维护人员灵活配置,那样还要改cs文件才行。
完整的程序是这样的,
1 XML文件
<?xml version="1.0" encoding="utf-8" ?>
<titles>
    <title id="1" value="passport">通行证</title>
    <title id="2" value="user name">用户名</title>
    <title id="3" value="user type">用户类型</title>
    <title id="4" value="password">密 码</title>
    <title id="5" value="valid code">验证码</title>
    <title id="6" value="true name">真实姓名</title>
    <title id="7" value="sex">性别</title>
    <title id="8" value="borthday">出生年月</title>
    <title id="9" value="address">地址</title>
    <title id="10" value="Zip code">邮政编码</title>
    <title id="11" value="telephone number">固定电话</title>
    <title id="12" value="Mobile">移动电话</title>
    <title id="13" value="Fax">传真</title>
    <title id="14" value="email">电子邮件</title>
    <title id="15" value="MSN">MSN</title>
    <title id="16" value="QQ">QQ</title>
    <title id="17" value="web">主页</title>
    <title id="18" value="enter">登录</title>
    <title id="19" value="manager enter">管理员登录</title>
    <title id="20" value="register">注册</title>
    <title id="21" value="exit">退出</title>
    <title id="22" value="failure login">登录失败!</title>
</titles>
2、读取XML的函数
public string ReadStringsByID(string XFile, string XPath, string XID)
    {
        //XFile:要读取的XML文件名称
        //XPath:节点路径

        //XID:条件ID值

        try
        {
            XmlDocument docSelect = new XmlDocument();
            docSelect.Load(XFile);
            XmlNodeList xnSelect = docSelect.SelectNodes(XPath + "[@id='" + XID + "']");
            string strRvalue = xnSelect.Item(0).InnerText;
            return strRvalue;
        }
        catch (XmlException e)
        {
            return e.Message;
        }
    }
3、aspx页
<p>
    <span id="pmpPassport"><%=getTitles("1")%></span>
    <asp:TextBox ID="txtPassport" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtPassport"
        ErrorMessage="RequiredFieldValidator"><%=getTitles("62")%><%=getTitles("1")%></asp:RequiredFieldValidator></p>
<p>
    <span id="pmpUserPwd"><%=getTitles("4")%></span>
    <asp:TextBox ID="txtUserPwd" runat="server" TextMode="Password"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="txtUserPwd"><%=getTitles("62")%><%=getTitles("4")%></asp:RequiredFieldValidator></p>
<p>
    <span id="pmpValidCode"><%=getTitles("5")%></span>
    <asp:TextBox ID="txtValidCode" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="txtValidCode"><%=getTitles("62")%><%=getTitles("5")%></asp:RequiredFieldValidator>
    </p>
<p>
    <asp:Image ID="imgValidCode" runat="server" />
    <asp:HiddenField ID="hidTarget" runat="server" />
    <asp:HiddenField ID="hidURL" runat="server" />
</p>
<p>
    <asp:Button ID="btnLoginSubmit" runat="server"/>
    <input id="btnReturn" type="button" value="<%=getTitles("61")%>"/>
</p>
4、aspx.cs里面读取title的函数
    public string getTitles(string XID)
    {
        return XRML.ReadStringsByID(XxmlTitleFile, "//titles/title",XID);
    }

#16


帖子我加了100分,大家帮我看下~,谢谢

#17


引用 9 楼 oldboys 的回复:
to 男兒流血不流淚: 
您说的是我想要的方式,但我按这种方式写的时候报错,代码如下: 
     <asp:Button ID="btnLoginSubmit" runat="server" Text= <%=gettitles("3")%>/> 
     <asp:Button ID="btnReturn" runat="server" Text= <%=gettitles("4")%>/> 
错误提示如下: 

错误 1 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 20 57 E:\newb\ 
错误 2 验证 (ASP.Net): 属性值必须…


==============================
我的天啊。论坛竟然有人用引用方式把别人的答案重复一遍,然后把引用的人当作当事人。
我超级无语。本来还想测试我的那个例子。算了不测试了。分也不想要了。汗~~~

#18


按楼主的做法,最好是考虑资源文件而不是现有的方式

#19


sorry 是我没看仔细
to amandag 高歌,资源文件在运行过程中修改后需要重启IIS才能生效吧?

#20


我也考虑过资源文件,但如果使用资源文件,在后期维护的时候对已上线系统频繁重启不太合适~

#21


楼主别忘了把答案贴上来啊,让我们也学习学习,谢谢

#22


用这个
<%
  这里来动态生成你的label,就是用Response.Write()来生成label就可以不指定id,比较灵活,就是asp一样
%>

#23


而且对于XML配置文件,可以开发一个工具交给客户自己去维护这类的内容,这样会增强系统的灵活性

#24


我现在改成这种方式
aspx页面
<asp:Button ID="btnLoginSubmit" runat="server" OnLoad="getButtonTitle(3)"/>
cs文件
    protected void getButtonTitle(object sender,EventArgs e,int XID)
    {
        Button txtControl = (Button)sender;
        //Response.Write(e.ToString());
        txtControl.Text = XRML.ReadStringsByID(XxmlTitleFile, "//titles/title", XID.ToString());
    }
但在编译的时候它提示错误如下:
错误 1 “getButtonTitle”方法没有采用“1”个参数的重载 E:\nweb\WebControl\user\uslogin.ascx 22

#25


感觉这种方式也不是很妥当,把控件的类型又绑死了

#26


this.pmpPassport.Text="xxx";
string xx=this.pmpPassport.Text;

#27


????
怎么我回复不了了?

#28


哭了,谁能给我答案啊?高手们~

#1


在cs里写啊``

#2


我听不懂
你要问的是不是说在.aspx 页面动态给这个Label控件赋值
.aspx页面
<asp:Label ID="pmpPassport" runat="server" Text=<%=GetlblText()%>> </asp:Label> 

.cs
public static string GetlblText()
{
  string strContect="这是.cs文件值";
return strContect;
}
这样就可以了

#3


this.pmpPassport.Text = "Lable value";

#4


引用 2 楼 tiancaolin 的回复:
我听不懂 
你要问的是不是说在.aspx 页面动态给这个Label控件赋值 
.aspx页面 
<asp:Label ID="pmpPassport" runat="server" Text= <%=GetlblText()%>>  </asp:Label>  

.cs 
public static string GetlblText() 

  string strContect="这是.cs文件值"; 
return strContect; 

这样就可以了

#5


this.pmpPassport="你要賦的值";

#6


錯了,不好意思!
應該是:this.pmpPassport.Text="你要賦的值";

#7


cs文件里写不是很容易吗?

pmpPassport.Text = "xxx";

#8


function JsFunction()
{
    document.getElementById('pmpPassport').value = '动态值,如何取值我就不清楚了';
}
onXxxx = JsFunction();

#9


to 男兒流血不流淚:
您说的是我想要的方式,但我按这种方式写的时候报错,代码如下:
    <asp:Button ID="btnLoginSubmit" runat="server" Text=<%=gettitles("3")%>/>
    <asp:Button ID="btnReturn" runat="server" Text=<%=gettitles("4")%>/>
错误提示如下:

错误 1 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 20 57 E:\newb\
错误 2 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 21 52 E:\newb\
错误 3 服务器标记不能包含 <% ... %> 构造。 E:\newb\WebControl\user\uslogin.ascx 20
错误 4 服务器标记不能包含 <% ... %> 构造。 E:\newb\WebControl\user\uslogin.ascx 21

to 潇湘夜雨,我想要的方式是尽量避免在后期维护修改控件的文字标题的时候修改cs文件,所以,cs里面只封装一些公共的函数,而不直接对控件进行赋值。

#10


     <asp:Button ID="btnLoginSubmit" runat="server" Text=' <%=gettitles("3")%>'/> 
     <asp:Button ID="btnReturn" runat="server" Text= '<%=gettitles("4")%>'/> 

test=''把内容加到单引号里就行了

#11


引用 10 楼 gaofenfei 的回复:
      <asp:Button ID="btnLoginSubmit" runat="server" Text='  <%=gettitles("3")%>'/>  
      <asp:Button ID="btnReturn" runat="server" Text= ' <%=gettitles("4")%>'/>  

test=''把内容加到单引号里就行了 

不对,直接把代码gettitles("3")显示出来了

#12


.aspx页面

<asp:Label ID="pmpPassport" runat="server" Text=  '<% = lblTest1%>'>   </asp:Label>
.aspx.cs页面

string lblTest1 = ;

 protected void Page_Load(object sender, EventArgs e)
  {
    lblTest1 = lblTest.GetlblText();
    Response.Write(lblTest1);
 }


lblTest.cs文件
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// lblTest 的摘要说明
/// </summary>
public static class lblTest
{
    public static string GetlblText()
    {
        string strContect = "测试";
        return strContect;
    }  
}

#13


对不起,刚才写错了,你看按这个思路可以么
aspx页面

标题:<%=lblTest1 %>


aspx.cs页面

public string lblTest1 = ;

 protected void Page_Load(object sender, EventArgs e)
  {
    lblTest1 = lblTest.GetlblText();
    Response.Write(lblTest1);
 }
lblTest.cs文件

 public static string GetlblText()
    {
        string strContect = "测试";
        return strContect;
    }  

我觉得这样就可以了··不必使用lable

#14


顶13楼
直接在Label位置取变量值

#15


引用 13 楼 gaofenfei 的回复:
对不起,刚才写错了,你看按这个思路可以么 
aspx页面 

标题: <%=lblTest1 %> 


aspx.cs页面 

public string lblTest1 = ; 

 protected void Page_Load(object sender, EventArgs e) 
  { 
    lblTest1 = lblTest.GetlblText(); 
    Response.Write(lblTest1); 
 } 
lblTest.cs文件 

 public static string GetlblText() 
    { 
        string strContect = "测试"; 
        return strContect; 

非常感谢,您说的方式我试过,我直接使用<span><%=getTitles("2")%></span>方式已经可以了,但目前是有些控件,比如说button,我是想让它的按钮显示名称也动态从我配置的XML里面读取,但又不想在cs里写死按钮的ID,因为那样aspx页就不太方便维护人员灵活配置,那样还要改cs文件才行。
完整的程序是这样的,
1 XML文件
<?xml version="1.0" encoding="utf-8" ?>
<titles>
    <title id="1" value="passport">通行证</title>
    <title id="2" value="user name">用户名</title>
    <title id="3" value="user type">用户类型</title>
    <title id="4" value="password">密 码</title>
    <title id="5" value="valid code">验证码</title>
    <title id="6" value="true name">真实姓名</title>
    <title id="7" value="sex">性别</title>
    <title id="8" value="borthday">出生年月</title>
    <title id="9" value="address">地址</title>
    <title id="10" value="Zip code">邮政编码</title>
    <title id="11" value="telephone number">固定电话</title>
    <title id="12" value="Mobile">移动电话</title>
    <title id="13" value="Fax">传真</title>
    <title id="14" value="email">电子邮件</title>
    <title id="15" value="MSN">MSN</title>
    <title id="16" value="QQ">QQ</title>
    <title id="17" value="web">主页</title>
    <title id="18" value="enter">登录</title>
    <title id="19" value="manager enter">管理员登录</title>
    <title id="20" value="register">注册</title>
    <title id="21" value="exit">退出</title>
    <title id="22" value="failure login">登录失败!</title>
</titles>
2、读取XML的函数
public string ReadStringsByID(string XFile, string XPath, string XID)
    {
        //XFile:要读取的XML文件名称
        //XPath:节点路径

        //XID:条件ID值

        try
        {
            XmlDocument docSelect = new XmlDocument();
            docSelect.Load(XFile);
            XmlNodeList xnSelect = docSelect.SelectNodes(XPath + "[@id='" + XID + "']");
            string strRvalue = xnSelect.Item(0).InnerText;
            return strRvalue;
        }
        catch (XmlException e)
        {
            return e.Message;
        }
    }
3、aspx页
<p>
    <span id="pmpPassport"><%=getTitles("1")%></span>
    <asp:TextBox ID="txtPassport" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtPassport"
        ErrorMessage="RequiredFieldValidator"><%=getTitles("62")%><%=getTitles("1")%></asp:RequiredFieldValidator></p>
<p>
    <span id="pmpUserPwd"><%=getTitles("4")%></span>
    <asp:TextBox ID="txtUserPwd" runat="server" TextMode="Password"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="txtUserPwd"><%=getTitles("62")%><%=getTitles("4")%></asp:RequiredFieldValidator></p>
<p>
    <span id="pmpValidCode"><%=getTitles("5")%></span>
    <asp:TextBox ID="txtValidCode" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="txtValidCode"><%=getTitles("62")%><%=getTitles("5")%></asp:RequiredFieldValidator>
    </p>
<p>
    <asp:Image ID="imgValidCode" runat="server" />
    <asp:HiddenField ID="hidTarget" runat="server" />
    <asp:HiddenField ID="hidURL" runat="server" />
</p>
<p>
    <asp:Button ID="btnLoginSubmit" runat="server"/>
    <input id="btnReturn" type="button" value="<%=getTitles("61")%>"/>
</p>
4、aspx.cs里面读取title的函数
    public string getTitles(string XID)
    {
        return XRML.ReadStringsByID(XxmlTitleFile, "//titles/title",XID);
    }

#16


帖子我加了100分,大家帮我看下~,谢谢

#17


引用 9 楼 oldboys 的回复:
to 男兒流血不流淚: 
您说的是我想要的方式,但我按这种方式写的时候报错,代码如下: 
     <asp:Button ID="btnLoginSubmit" runat="server" Text= <%=gettitles("3")%>/> 
     <asp:Button ID="btnReturn" runat="server" Text= <%=gettitles("4")%>/> 
错误提示如下: 

错误 1 验证 (ASP.Net): 属性值必须用引号括起来。 E:\newb\WebControl\user\uslogin.ascx 20 57 E:\newb\ 
错误 2 验证 (ASP.Net): 属性值必须…


==============================
我的天啊。论坛竟然有人用引用方式把别人的答案重复一遍,然后把引用的人当作当事人。
我超级无语。本来还想测试我的那个例子。算了不测试了。分也不想要了。汗~~~

#18


按楼主的做法,最好是考虑资源文件而不是现有的方式

#19


sorry 是我没看仔细
to amandag 高歌,资源文件在运行过程中修改后需要重启IIS才能生效吧?

#20


我也考虑过资源文件,但如果使用资源文件,在后期维护的时候对已上线系统频繁重启不太合适~

#21


楼主别忘了把答案贴上来啊,让我们也学习学习,谢谢

#22


用这个
<%
  这里来动态生成你的label,就是用Response.Write()来生成label就可以不指定id,比较灵活,就是asp一样
%>

#23


而且对于XML配置文件,可以开发一个工具交给客户自己去维护这类的内容,这样会增强系统的灵活性

#24


我现在改成这种方式
aspx页面
<asp:Button ID="btnLoginSubmit" runat="server" OnLoad="getButtonTitle(3)"/>
cs文件
    protected void getButtonTitle(object sender,EventArgs e,int XID)
    {
        Button txtControl = (Button)sender;
        //Response.Write(e.ToString());
        txtControl.Text = XRML.ReadStringsByID(XxmlTitleFile, "//titles/title", XID.ToString());
    }
但在编译的时候它提示错误如下:
错误 1 “getButtonTitle”方法没有采用“1”个参数的重载 E:\nweb\WebControl\user\uslogin.ascx 22

#25


感觉这种方式也不是很妥当,把控件的类型又绑死了

#26


this.pmpPassport.Text="xxx";
string xx=this.pmpPassport.Text;

#27


????
怎么我回复不了了?

#28


哭了,谁能给我答案啊?高手们~