winforms - 如何在 Windows 窗体应用程序中使用派生控件

标签 winforms user-interface

充其量,我是一个 UI 新手,但我是一个相当优秀的 OO 开发人员(如果我自己不这么说的话)。我对如何与设计师合作感到困惑。我正在开发一个 Windows 窗体应用程序。我有一个源自 System.Windows.Forms.TabPage 的控件(TabPage)我想将其放在 System.Windows.Forms.TabControl 上控制。

public class MyTabPage : TabPage
{ ... }

我不知道如何让设计者使用我的控件。

一位开发人员同事帮我查看了此内容,并建议我添加更多信息。

我已经制作了一个 WinForms 应用程序的原型(prototype)。该应用程序有 TabControl ,上面有三个标签页。每个TabPage有一个SplitterControlDataGridView控制分配器的每一半。两个DataGridView控件形成我们需要编辑的一些数据的主从 View 。我向每个 DataGridView 控件添加了一堆事件处理程序,并且每次将处理程序代码放入表单中时。该表单变得非常拥挤,希望使用面向对象技术来清理内容。

我现在想重做原型(prototype),因为每个 TabPage行为上是相同的,我想使用面向对象来抽象掉一些复杂性。这就是我缺乏设计器经验的原因。必须有一种方法可以使用设计器来完成比我的原始原型(prototype)更复杂的事情。

最佳答案

您并没有真正改变 TabPage 的行为,它毕竟只是一个容器:)。 TabPage 和 TabControl 的耦合相当紧密,而且它们可能应该如此。您的“控件”应该放置在 TabPage 上。因此,将您的用户控件定义为带有拆分器和两个数据 GridView 的面板,然后将您的用户控件放在应用程序中的每个 TabPage 上。选项卡控件/页面串联仍将自动工作,并且您的自定义代码将位于适当的控件中。

关于winforms - 如何在 Windows 窗体应用程序中使用派生控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4246619/

相关文章:

.net - 您在 Virtual PC 上进行开发时遇到过问题吗?

java - Android如何以编程方式绘制圆角矩形形状

android - 操作栏 : Best practice for older Android versions

java - Swing JDialog/JTextPane 和 HTML 链接

matlab - 在 matlab GUI 中创建选项卡

c# - 单窗口窗体中的从右到左文本

c# - 获取浏览器中打开的标签页的 URL

c# - 更改 ListView 标题和网格线颜色

c# - 运行和停止方法一分钟

c# - Winforms C# 中基类与派生类控件交互