标签id未在VB.NET中声明错误

时间:2011-04-02 08:27:31

标签: asp.net vb.net

我在ASP.NET中有一个简单的标签。我想在VB.NET中设置文本。标签的ID为norecords。 VB.NET代码如下:lblnorecords.Text = "No Record found"

但是,它让我错误地说:name norecord is not declared

6 个答案:

答案 0 :(得分:1)

确保您的标签的变量名称是norecoreds,只需单击标签上的标签,然后查看标签的属性,尤其是名称

答案 1 :(得分:1)

如果您的标签位于某种模板中,则它不能直接在页面范围内使用。以下是您可以访问它的粗略示例:

MyPage.aspx

<asp:Repeater ID="repGeneric" runat="server" OnItemDataBound="RepGenericItemDataBound">
<ItemTemplate>

    <asp:Label ID="lblnorecords" runat="server" CssClass="separateYourCss" />

</ItemTemplate>
</asp:Repeater>

MyPage.aspx.cs

...
protected void RepGenericItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item 
        || e.Item.ItemType == ListItemType.AlternatingItem) {

        var myLabel = e.Item.FindControl("lblnorecords");

        myLabel.Text = "No Records Found";

    }
}

答案 2 :(得分:1)

有时名称尚未注册到.aspx.designer.vb文件,这会导致问题,因为代码隐藏会从该文件中获取命名信息。您可以通过在代码隐藏中使用intellisense轻松地看到它,并查看变量名是否存在。 如果它没有注册它是一个VS错误。

在.aspx中从源到设计点击几次,看看该名称现在是否已在.aspx.designer.vb文件中正确注册。如果没有,请手动更改。

答案 3 :(得分:1)

我遇到了同样的问题。

单选按钮列表,效果不佳。并显示“未声明名称norecord”。

可能你有两个同名或类似名字的aspx,而lengauge并不是这个控件的所有者是什么页面。

例如,y有两个页面名称相同的页面.aspx和page1.aspx,两者都包含在项目中,我排除了其中一个项目并且一切运行良好。

检查一下。

答案 4 :(得分:0)

如果你得到同样的错误 没有宣布。由于其防护等级,它可能无法访问 更改控制属性: GenerateMember = True

仅更改属性

答案 5 :(得分:0)

我也有这个问题。关闭并重新打开Visual Studio后,变量已被识别,因此请尝试重新启动设计环境。