【问题标题】:“A field initializer cannot reference the non-static field, method“字段初始值设定项不能引用非静态字段、方法
【发布时间】:2014-02-04 22:12:05
【问题描述】:

我的项目有一个类“mybutton”。

namespace Project.WebUI.HtmlHelpers
{
    public class myButton 
    {
        public myButton()
        {
            Clickable = false;
            Selected = false;
            Url = "";
        }

        public myButton(string displayText, string url) : this()
        {
            DisplayText = displayText;
            Url = url;
        }

        public bool Clickable { get; set; }
        public bool Selected { get; set; }
        public string DisplayText { get; set; }
        public string Url { get; set; }

    }
}

当我尝试从另一个类创建 myButton 的新实例时,我收到错误“字段初始化程序无法引用非静态字段,方法...”(url 上的红色波浪线)。

public class PageElements
{
    url =”url goes here”;
    public myButton CancelButton = new myButton("Cancel Order", url);
    …
    …
}

我做错了什么?

【问题讨论】:

标签: c#


【解决方案1】:

它表示将 CancelButton 的初始化移动到 PageElements 构造函数中。我为了工作你试图做的事情 url 应该是 staticconstant

【讨论】:

    【解决方案2】:

    使用

    const string url =”url goes here”;
    

    static string url =”url goes here”;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-16
      • 2013-01-04
      • 2022-01-23
      相关资源
      最近更新 更多