gpt4 book ai didi

c# - 控件中的嵌入窗体或作为用户控件的窗体

转载 作者:太空狗 更新时间:2023-10-29 23:19:37 25 4
gpt4 key购买 nike

好吧,我有一个大型 CRUD 应用程序,它使用带有嵌入其中的表单的选项卡 -->

public static void ShowFormInContainerControl(Control ctl, Form frm)
{
frm.TopLevel = false;
frm.FormBorderStyle = FormBorderStyle.None;
frm.Dock = DockStyle.Fill;
frm.Visible = true;
ctl.Controls.Add(frm);
}

然后我在父窗体的窗体加载事件中调用下面的 -->

 // Embedd the child form in the this Parent
WinFormCustomHandling.ShowFormInContainerControl(pnlModuleHost, _frmWWCModuleHost);

这是给我的HERE回答我之前的问题。

随着我在这方面的进步,我一直有一种令人作呕的感觉,即多层嵌入式表单是一场等待发生的灾难,而且用户控件不断弹出。谁能给我一些关于使用用户控件与嵌入表单的具体建议?

有关此问题的灵感,请参阅我之前的问题。 HERE

还可以找到我当前的嵌入式表单布局的屏幕截图 HERE .

谢谢

最佳答案

我的观点是,您选择哪个方向可能并不重要。我会选择使用用户控件,因为它是更标准的方法,并且可以让您在未来拥有更大的灵 active 。例如,如果您的客户来找您说他们想要将两个选项卡合并为一个选项卡怎么办?用户控件将允许您将这两个控件放在一个选项卡上,而无需将控件组合成一个表单,然后在下个月需求再次更改时将其更改回来。

您有一个大型、复杂的应用程序,其中有许多部分,据我所知,这些部分需要相互通信。我认为您应该问自己的问题不是“表单还是用户控件?”。您应该问自己的问题是,“这个应用程序的架构是否正确?”。

我认为包含插件式架构的设计可能更适合您拥有的许多移动部件...或者您可以看看 Microsoft 的模式和实践复合应用程序 block (CAB)

关于c# - 控件中的嵌入窗体或作为用户控件的窗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/821094/

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