【问题标题】:C# Open a form from another form, which is located in a different projectC# 从另一个表单打开一个表单,该表单位于不同的项目中
【发布时间】:2017-10-25 08:23:50
【问题描述】:

我有两个不同的项目,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();
    }
}

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

【问题讨论】:

  • 请提供您所有的代码。
  • 所有代码都采用那种形式,先生?
  • 什么是“用户端和驱动端”? 2台不同的电脑?然后你需要它们之间的某种通信,可能是网络通信。
  • 用户端和驱动端是两个不同的项目

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


【解决方案1】:

转到您的解决方案资源管理器并右键单击您要执行的项目。现在单击“设置为启动项目”。这个项目会被突出显示,你至少应该看到任何不同。

Have a look at this picture。有两个不同的项目:John.Socialclub.Data 和 John.Socialclub.Desktop。而且您不要单击下面的任何文件,右键单击您的项目本身并将它们简单地设置为启动项目。


更新:

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

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

现在我们在DriverSideForm1中:

在开头的注释中,您必须添加此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。插入此代码,您应该没问题。你可以忽略构造函数public Form1(),我只是把它放在那里,让你感觉熟悉你的代码并确切地了解在哪里放置什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-26
    • 2020-08-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-27
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多