如何在已经创建vb.NET控件之后设置它的类

时间:2015-01-24 14:16:50

标签: vb.net winforms custom-controls

我有一个带有7个图片框的Windows窗体,名为PropButton1到PropButton7。我知道它们不是按钮,但无论如何我都将它们用作按钮(普通按钮不适用于此目的)。

我想将自定义“文件路径”属性添加到图片框。为此,我创建了一个继承PictureBox类的单独类:

Public Class PropButton
    Inherits PictureBox
    Private SoundFilePath As String

    Public Property SoundFile() As String
        Get
            Return SoundFilePath
        End Get
        Set(value As String)
            SoundFilePath = value
        End Set
    End Property

End Class

我想将原始图片框从PictureBox转换为PropButton,这样我就可以读取和写入像PropButton1.SoundFilePath这样的内容,我最好不要删除所有图片框并重新开始。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

在Visual Studio中,在解决方案资源管理器中向右查找。它有一个工具栏按钮来显示所有文件。单击它,您将看到可以展开表单的树节点,它们包含三个文件。一个包含您的源代码,另一个包含Designer。 Designer文件由Visual Studio自动生成,在大多数情况下不应触及。

当您打开设计器文件时,您会看到表单上的控件的所有初始化及其声明。在这里,您可以轻松更改图片框的声明,以便将它们创建为PropButtons。

请注意你在这里更改的内容,因为它会弄乱Visual Studio设计器。但是知道幕后发生的事情很好。

首先看这里:
enter image description here

更改此...
enter image description here

......对此 enter image description here

答案 1 :(得分:1)

是的,可以使用文本编辑器。 Visual Basic IDE隐藏了太多信息,您要做的第一件事就是单击解决方案资源管理器窗口中的“显示所有文件”图标。这会在同一窗口中的表单旁边添加一个节点,打开它并双击Designer.vb文件。注意InitializeComponent()方法和文件底部的声明,你会看到声明和初始化的PictureBox。

现在您只需使用“PropButton”编辑+替换“System.Windows.Forms.PictureBox”。

确保在执行此操作之前有良好的备份。