【问题标题】:Custom wizard control自定义向导控件
【发布时间】:2009-02-24 23:28:02
【问题描述】:

我必须在 VB.NET 中为 Windows 窗体项目构建自定义向导控件。由于围绕版权的一些模糊逻辑,我“不允许”使用互联网上现有的向导控件。我没有“被允许”在软件中使用用户控件。

有人知道我应该从哪里开始吗?

【问题讨论】:

  • 不允许使用用户控件?听起来这充其量只是一个笨拙的巫师。
  • 第一步:更新你的简历。您的组织听起来毫无头绪。让我直截了当地说:他们希望您构建自定义控件...但是您不允许使用用户控件?
  • 我认为 Amy 指的是外部向导控制,因为尝试许可许可
  • @ahockley 这就是我最终做的:)

标签: vb.net windows winforms user-controls


【解决方案1】:

在我的工作中,我们为向导的每个步骤使用了一个面板来实现一个向导。为了方便使用面板,我们将每个面板的大小缩小为一个小正方形,并将它们并排放置在包含控件中,因此当我们想要编辑面板时,我们单击相应的正方形,并将停靠属性设置为充满。完成后,我们将 dock 属性设置为 none,控件返回到它的小正方形尺寸。

以编程方式,您可以执行类似的操作来显示当前步骤的好面板。单击“下一步”按钮时,隐藏并取消停靠前一个面板,然后显示并停靠当前面板。

【讨论】:

    【解决方案2】:

    TabControl 是设计器中非常方便的控件。在运行时更改标签页也很容易,只需设置 SelectedIndex 或 SelectedTab 属性。你只需要摆脱标签。幸运的是,这很容易。向您的项目添加一个新类并粘贴如下所示的代码。建造。将新控件从工具箱顶部拖放到表单上。

    Public Class WizardPages
        Inherits TabControl
        Protected Overrides Sub WndProc(ByRef m As Message)
            '--- Hide tabs by trapping the TCM_ADJUSTRECT message
            If m.Msg = &H1328 AndAlso Not DesignMode Then
                m.Result = CType(1, IntPtr)
            Else
                MyBase.WndProc(m)
            End If
        End Sub
    End Class
    

    【讨论】:

      猜你喜欢
      • 2012-01-12
      • 2012-08-04
      • 2010-12-19
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-27
      • 2014-04-22
      相关资源
      最近更新 更多