我有一个解决方案与几个项目相结合。 这是我的App.xaml.cs
public partial class App : Application
{
private SiteManager _siteManager = new SiteManager();
public SiteManager SiteManager
{
get { return _siteManager; }
set { _siteManager = value; }
}
}
在我跑步期间,我在同一个解决方案中调用另一个项目
SiteDll.MainWindow siteManagerDialog = new SiteDll.MainWindow();
siteManagerDialog.Show();
但我不知道如何将App.xaml.cs中的所有变量传递给SiteDll.MainWindow siteManagerDialog。
我试过了:
SiteDll.MainWindow siteManagerDialog = new SiteDll.MainWindow((App)Application.Current);
siteManagerDialog.Show();
并将其转换为SiteDll.MainWindow构造函数:
public MainWindow(object me)
{
Application app = ((App)me);
InitializeComponent();
}
但我得到了投射错误...... 这样做的正确方法是什么?
答案 0 :(得分:0)
您正在将YourApplication1.App类型转换为YourApplication2.App,它们是不同类型的。这就是为什么你得到一个无效的强制转换异常。
您可以做的是,您可以将公共变量放在单独的程序集中,并从两个应用程序中引用此程序集。