C#从另一个表单中打开一个表单,该表单位于不同的项目中

时间:2017-10-25 08:23:50

标签: c# winforms visual-studio multiple-projects

我有两个不同的项目,DriverSideLogInForm。在两者中都有一个表单,DriverSide表单Form1将在应用程序的开头执行,LogInForm重要表单是UserOnTrip表单。在Form1上是一个按钮,点击事件我想打开UserOnTrip表单,但我不知道如何处理它,因为表单在不同的项目上。

这是我点击按钮的方法:

private void _btnAccept_Click(object sender, EventArgs e)
{
        LogInForm._pnlUserOntrip _pnl = new LogInForm._pnlUserOntrip();
        _pnl.Show();
        //System.Diagnostics.Process.Start(Application.StartupPath.ToString() + @"\_pnlUserOnTrip.exe");

        LogInForm.LoadingScreen _load = new LogInForm.LoadingScreen();
        _load.Hide();
    }
}

这是我的解决方案资源管理器的布局:

enter image description here

1 个答案:

答案 0 :(得分:0)

转到解决方案资源管理器,右键单击要执行的项目。现在点击“设置为开始项目'”。这个项目稍微突出显示,你应该看到任何差异。

Have a look at this picture。有两个不同的项目:John.Socialclub.Data和John.Socialclub.Desktop。你不要点击下面的任何文件,右键单击你自己的项目,并将它们简单地设置为开始项目。

<强>更新

所以我这样理解,你在项目DriverSide Form1中执行。在此表单上,您有一个按钮,用于打开位于UserOnTrip项目中的LogInForm表单。

首先,您要添加对DriverSide项目的引用。再次访问解决方案资源管理器,然后单击References。然后点击Add reference。然后会弹出一个菜单,您可以在左侧选择projects。现在应该列出您的项目LogInForm,您可以使用comboBox选择它并按OK。

现在我们位于Form1的{​​{1}}:

在开始时请注意,您必须添加此DriverSide引用才能使用对using的引用。使用引用将其添加到另一个。

LogInForm

我刚刚复制了你点击按钮的方法using LogInForm; namespace DriverSide { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void _btnAccept_Click(object sender, EventArgs e) { UserOnTrip testWindow = new UserOnTrip(); testWindow.Show(); } } } 。插入此代码,你应该没问题。你可以忽略构造函数_btnAccept_Click,我只是把它放在那里你熟悉你的代码并准确理解放在哪里。