使用一个表单来显示所有表单C#

本文关键字:表单 显示 一个 | 更新日期: 2023-09-27 18:28:35

所以几周前我问如何在一个屏幕上显示所有表单,我得到了一个很好的答案。我使用的代码在链接中。

然后我发现它没有显示日期库,按钮也不起作用,这是因为我正在使用formPresenter来激活表单并控制按钮。

class WorkerPresenter
{
    public frmWorker frmWorker;
    public WorkerPresenter()
    {
        frmWorker = new frmWorker();
        RegisterNotification(frmWorker);
        try
        {
            //frmWorker.ShowDialog();
            frmWorker.Show();
        }
        catch { }
        finally { }
    }
    public void RegisterNotification(frmWorker frmWorker)
    {
        frmWorker.DGVWorker.RowHeaderMouseClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(DGVWorker_RowHeaderMouseClick);
        frmWorker.Activated += new EventHandler(frmWorker_Activated);
        frmWorker.SearchWorkerB.Click += new EventHandler(SearchWorkerB_Click);
        frmWorker.ClearWorker.Click += new EventHandler(ClearWorker_Click);
        frmWorker.Clear2Worker.Click += new EventHandler(Clear2Worker_Click);
        frmWorker.LeftWorker.Click += new EventHandler(LeftWorker_Click);
        frmWorker.RightWorker.Click += new EventHandler(RightWorker_Click);
        frmWorker.ShowAllWorker.Click += new EventHandler(ShowAllWorker_Click);
        frmWorker.DeleteWorker.Click += new EventHandler(DeleteWorker_Click);
        frmWorker.DownWorker.Click += new EventHandler(DownWorker_Click);
        frmWorker.UpWorker.Click += new EventHandler(UpWorker_Click);
        frmWorker.AddWorker.Click += new EventHandler(AddWorker_Click);
        frmWorker.UpdateWorker.Click += new EventHandler(UpdateWorker_Click);
    }

如果你需要的话,我可以发送完整的课程。

我想知道:我可以集成formPresenter吗?我必须使用第一个链接中的代码?

使用一个表单来显示所有表单C#

之前设置的答案很好用。你还有什么需要?有两种方法:

  1. 使用mdimanager
  2. 使用表格控件

当使用mdi管理器时,所有窗口都以mdiparent的mainform打开,而不是以新表单打开。使用表格控件时,所有窗口都会在此控件中添加一个窗口。

你寻求第三种用法吗?您可以使用几个代码来演示用法,或者使用简单绘画的屏幕截图。