gpt4 book ai didi

C# WinForms : How do you prevent child form from being minimized when parent form is minimized?

转载 作者:太空狗 更新时间:2023-10-29 19:44:32 27 4
gpt4 key购买 nike

我正在创建一个 C# WinForms MDI 应用程序。我有一个主窗体,其中包含 4 个其他窗体。我希望能够将子窗体移出父窗体(它们的 FormBorderStyle 值设置为可调整大小的工具栏,以便单独的窗口不会出现在每个子窗口的任务栏上)。我可以通过对主窗体使用以下代码来完成此操作:

    using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Prototype
{
public partial class MdiParent : Form
{
private FastEyeControl m_ControlForm;
private FastEyeLogWindow m_LogForm;
private FastEyeConfiguration m_ConfigurationForm;
private ROCOrderWindow m_OrderLogForm;

public MdiParent()
{
InitializeComponent();

m_ControlForm = new FastEyeControl();
m_LogForm = new FastEyeLogWindow();
m_ConfigurationForm = new FastEyeConfiguration();
m_OrderLogForm = new ROCOrderWindow();
}

private void MdiParent_Load(object sender, EventArgs e)
{
m_ControlForm.Show(this);
m_LogForm.Show(this);
m_ConfigurationForm.Show(this);
m_OrderLogForm.Show(this);
}
}
}

但是,当我最小化父表单时,所有子表单也会最小化(正如预期的那样)。无论如何,当父窗口最小化时,是否可以防止父窗口之外的任何子窗体被最小化?基本上,我希望用户能够根据需要调整单个子窗体的大小并将其移动到父窗体之外(例如在 Visual Studio.NET 中取消停靠工具栏并将其放置在另一个监视器中的某个地方)。感谢您的帮助!

最佳答案

我认为您将不得不远离拥有/父级/mdi 窗口,而必须使它们成为所有无主的顶级窗口,彼此“平行”。然后编写您自己的逻辑,将一个窗口停靠在另一个窗口中。

关于C# WinForms : How do you prevent child form from being minimized when parent form is minimized?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5875765/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com