Codebehind没有在Page_Load </asp:label>中设置<asp:label>文本

时间:2014-01-21 02:42:06

标签: asp.net vb.net

我正在尝试使用VB.Net为WebForms设计表单。我一直在关注以下链接My label's text isn't changing on page_load asp.net。但那里的解决方案对我不起作用。我已经为Handles Me.Load事件处理程序定义了Page_Load,但结果是一个“空白”页面,下面是HTML输出。

form.aspx:

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="form.aspx.vb" Inherits="MyApp.form" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Test</title>
</head>
<body>
    <asp:Label id="vcode" runat="server" />
</body>
</html>

form.aspx.vb:

Imports System.Web

Public Class form
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        vcode.Text = "Why not?"
    End Sub

End Class

HTML输出:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
    Test
</title></head>
<body>
    <span id="vcode"></span>
</body>
</html>

我怀疑它与Inherits属性有关,但是如果我从该类定义中取出Page_load,我会收到错误:

  

语句在命名空间中无效

我还尝试将页面上的AutoEventWireup属性设置为true,但没有更改..仍为空白标签。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

尝试添加如下命名空间:

Namespace MyApp

  Public Class form Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
      vcode.Text = "Why not?"
    End Sub

  End Class

End Namespace