如何在页面加载后从代码设置ASP.NET标签文本?

前端之家收集整理的这篇文章主要介绍了如何在页面加载后从代码设置ASP.NET标签文本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我似乎找不到答案了.这是场景:
我有一个使用C#的ASP.NET项目.我正在使用C#(使用ADO)从sqlite数据库中加载数据(用户名,电子邮件等).我将在App_Data文件夹中的类文件中将数据加载到静态全局变量中.我需要能够在加载时将用户名插入到页面上的ASP.NET标签中.

PHP中,我只是这样做:

<?PHP
function GetUserName() {
//code which retrieves username from db.
return username;
}
?>
<p>Here is the username: <?PHP echo GetUserName(); ?></p>

任何人都可以解释这是怎么做到的?我是ASP.NET的新手.

这里有一些更多的细节.我试过你们建议的我的页面加载功能在一个名为RankPage.aspx.cs的文件中,下面的表在RankPage.aspx中.这个想法是列出我从数据库检索的一堆用户.我投入’myLabel’来测试它.现在,没有在我的代码中声明’myLabel’,它的错误’myLabel’不存在于当前的上下文中.如果我使用FindControl()函数声明“myLabel”,我会得到一个运行时异常,“myLabel”未设置为对象的实例.

以下是代码

protected void Page_Load(object sender,EventArgs e)
{
    if (!Page.IsPostBack)
    {
        Label myLabel = this.FindControl("myLabel") as Label;
        myLabel.Text = "my text";
    }
}

<table>
    <tbody>
        <tr>
            <th>Name</th>
            <th>score</th>
        </tr>

        <tr>
            <td>name</td>
            <td>score</td>
        </tr>

        <!-- Current User -->
        <tr>
            <td><asp:Label id="currentUserName" runat="server"></asp:Label></td>
            <td><asp:Label id="currentUserscore" runat="server"></asp:Label></td>
            <td><asp:Label ID="myLabel" runat="server" /></td>
        </tr>
        <!-- End Current User -->

    </tbody>
</table>

解决方法

对于此标签
<asp:label id="myLabel" runat="server" />

代码背后使用(C#):

myLabel.Text = "my text";

更新(更新后的问题):

您不需要使用FindControl – 整行是多余的:

Label myLabel = this.FindControl("myLabel") as Label;
  myLabel.Text = "my text";

应该是:

myLabel.Text = "my text";

Visual Studio设计器应该创建一个文件,其中所有服务器端控件已经正确添加到该类(默认情况下在RankPage.aspx.designer.cs文件中).

你正在谈论一个RankPage.cs文件 – Visual Studio将命名它的方式是RankPage.aspx.cs.如何将这些文件链接在一起?

猜你在找的asp.Net相关文章