在同一解决方案中出现的另一个项目中使用App.xaml.cs参考?

时间:2012-09-18 15:13:19

标签: windows-phone-7 xaml microsoft-metro windows-phone-7.1

嗨我在初始项目(默认项目)的解决方案中有不同的项目我正在以这种方式访问​​App.xaml.cs的全局引用: -

App objref =(App)Application.Current;

但是现在我已经在我的解决方案中添加了新项目,并尝试以与之前定义相同的方式访问app.xaml.cs,但我无法访问app.xaml.cs?

1)我能知道原因

2)如果我想在两个项目中使用它,我该怎么办?

请告诉我

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以访问它,但新项目将不熟悉项目中的派生App类。为了进一步解释,我们需要考虑继承。

Application类的通用定义公开了许多预定义的方法。 App.xaml.cs是一个从Application类派生的新类定义。它具有继承的方法以及您添加的方法和属性。要使用这些代码,任何寻求使用额外属性或方法的代码都必须能够访问类定义。您添加的其他项目中的类无权访问此定义。

您需要创建两个项目都可以访问的类或接口定义。有几种组织方式。我会提出一个。

  1. 在解决方案中创建主项目。这包含你的 App.xaml.cs.
  2. 创建包含的类库项目     其他代码。
  3. 创建一个名为Common的第三个项目,仅包含     接口定义。
  4. 在Interface定义中定义所有方法/属性 你想要你的类库和主项目 访问也是。
  5. 让App.Xaml.cs实现此接口。
  6. 在类库中访问var appReference = (IMyInterfaceName)Applcation.Current。你可以访问 接口
  7. 中定义的方法