winforms 面板与 java swing 面板
在 java swing 中,我可以将面板插入面板等,而不必为我的应用程序的每个视图构建一个全新的窗口,或者混乱地删除和添加控件。
C# 有一个面板类,但是我看不到任何创建“面板表单”的方法,或者基本上只是表单设计器中的一个表单,即面板及其内容。
那么我该如何做到这一点并像我在 java swing 中所做的那样工作呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
通常我只是将不同的表单停靠在彼此之间,将父窗口上的 IsMdiContainer 属性设置为 true 。 然后,我使用以下函数创建停靠的子窗体:
然后每当我需要将窗体停靠在父窗体上的面板内时,我只需执行以下操作:
这允许我将一些窗体创建委托给不同的设计人员。 对我来说就像一个魅力,很想听听是否有更好的方法。
Usually i just dock different forms within eachother setting the IsMdiContainer Property to true on the parent window. Then i create subforms that i dock using the following function:
then whenever i need to dock a form inside a panel on the parents form i just do:
This allows me to delegate some of the form creation to different designers. Works like a charm for me, love to hear if theres a better way of doing it.
实际上,您可以使用面板控件并将其 Dock 属性设置为 Fill。 这样,您的面板将成为表单的整个画布。 然后,您可以根据需要通过代码隐藏或通过表单设计器添加子面板。
Actually, you can use the panel control and set it's Dock property to Fill. That way, your panel will be the entire canvas of the form. Then, you can add child panels as needed either through code behind or through forms designer.
有一个用户控件的概念,它基本上为您提供了一个像设计器表面一样的面板,更不用说您可以创建原子表单(可以重用)并将它们注册为可继承,这样您也可以提供继承。
There's the concept of user controls which basicly provides you with a panel like designer surface , not to mention that you can create atomic forms (which can be reused) and register them as inheritable, that way you can provide inheritance too.