无法理解"字段初始化程序无法引用非静态字段"错误?

Sim*_*ons 1 c# asp.net silverlight silverlight-3.0

我收到错误"字段初始值设定项不能引用非静态字段",而我的代码如下:

Object selectedItem = PageVariables.slectedItemData;
MyClass selectedItems = (MyClass)selectedItem;
Run Code Online (Sandbox Code Playgroud)

但是,如果在构造函数或不同的方法中分配值,同样的方法也适用,如下所示:

public partial class MusicPlayer : Page
{
   Object selectedItem = PageVariables.slectedItemData;
    public MusicPlayer()
      {
        InitializeComponent();
        MyClass selectedItems = (MyClass)selectedItem;
      }
}
Run Code Online (Sandbox Code Playgroud)

我只是想了解有什么区别,为什么它在寻找静态变量声明(在第一种情况下)而在构造函数或不同方法中不寻找它!

Mar*_*tos 5

这不是静态字段的问题.这是尝试selectedItem在另一个非静态字段的初始化中使用非静态字段selectedItems.这是C#的限制.