Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 引用表单上的标签会导致语法错误_C#_Winforms - Fatal编程技术网

C# 引用表单上的标签会导致语法错误

C# 引用表单上的标签会导致语法错误,c#,winforms,C#,Winforms,我有一个Windows窗体应用程序,在我的窗体上有一个名为loginBtn的按钮和一个名为loginMessageLbl的标签 现在,当我编写下面的代码时,它给了我一个错误,即“名称'loginMessageLbl'在当前上下文中不存在” 单击按钮后,我不确定如何更改标签的文本值: namespace WindowsFormsApplication2 { public partial class Form1 : Form { public Form1()

我有一个Windows窗体应用程序,在我的窗体上有一个名为
loginBtn
的按钮和一个名为
loginMessageLbl
的标签

现在,当我编写下面的代码时,它给了我一个错误,即“名称'loginMessageLbl'在当前上下文中不存在”

单击按钮后,我不确定如何更改标签的文本值:

namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
             InitializeComponent();
        }
        private void loginBtn_Click(object sender, EventArgs e)
        {
               loginMessageLbl.text = "Invalid Username or password";
        }
    }
}

LoginMessageBL可能拼写错误或添加到其他表单中。请记住,C#是区分大小写的。

智能感知应该在您键入它时告诉您它是否存在-如果您的名称稍有错误或大写字母不同,它也会帮助您。另外,您正在尝试设置一个名为“text”的属性—您实际需要的属性是带有大写字母T的“text”。

这是更改文本的正确方法,但是如果标签不存在,那么我会说检查标签属性,确保您没有犯拼写错误或类似错误


此外,在键入标签名称时,Intellicense应该已经选择了正确的名称。

可能在Form.Designer.cs中发生了某些情况,其中包含了实例化拖放到表单上的控件所需的所有代码

private void loginBtn_Click(object sender, EventArgs e)
    {
           loginMessageLbl.Text = "Invalid Username or password";
    }
在From.Designer.cs中,您应该具有如下内容:

 private System.Windows.Forms.Label loginMessageLbl ;
表单设计器是自动生成的文件,因此您可以尝试删除标签并将其再次添加到表单中

private void loginBtn_Click(object sender, EventArgs e)
    {
           loginMessageLbl.Text = "Invalid Username or password";
    }
  • 如前所述,确保loginMessageBl.Text中的.Text有大写字母“T”
  • 确保准确键入标签名称(包括大小写)。如前所述,如果您使用的是Visual Studio,IntelliSense将为您“预测”名称并完成标签名称及其方法、属性等。(例如,如果您键入“.te”,它将猜测“.Text”
  • 确保标签对象的可见性(可能VS2010显示“修改器”)设置为“Friend”或“Public”。当然,此设置需要根据您的需要进行更改。如果这是您的问题,请发回

  • 您可能更改了标签的文本而不是名称。单击标签,查看名称的属性。此外,请尝试:
    this.
    并查看
    l
    下显示的内容。可能是您拼写错误了标签。您还可以在表单设计器中双击标签,查看其名称。添加更多信息。此代码完全无效lid..也许标签的名称不完全是这样?你能发布一个小标记(不是全部!)来表明控件确实存在吗?@gbianchi:
    text
    无效。它应该是
    text
    @NeilKnight;)