Imports System.ComponentModel
Imports System.Drawing
Imports System.Windows.Forms
public class UseCustomControl
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Public ColorChanged As Boolean
Private origionalcolor As Color
Enum month
Frebrary
January
March
April
May
June
July
Agustor
September
October
November
December
End Enum
Private monthnum As month
Property mymonth() As month
Get
mymonth = monthnum
End Get
Set(ByVal value As month)
monthnum = value
End Set
End Property
Private Sub Control11_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Control11.Load
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.Visible = False
colorchanged = Not ColorChanged
If colorchanged = True Then
Control11.BackColor = origionalcolor
Else
Control11.BackColor = System.Drawing.Color.Red
End If
Control11.MyText = "Custom property"
End Sub
Private Sub Form1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
Label1.Visible = False
If ColorChanged = True Then
Control11.BackColor = origionalcolor
ColorChanged = False
End If
End Sub
Private Sub Control11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Control11.Click
Label1.Visible = True
End Sub
Private Sub Control11_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Control11.MouseMove
If Not ColorChanged Then
Control11.BackColor = System.Drawing.Color.Green
ColorChanged = True
End If
End Sub
End Class
_
Partial Class Form1
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
_
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
_
Private Sub InitializeComponent()
Me.Button1 = New System.Windows.Forms.Button
Me.Label1 = New System.Windows.Forms.Label
Me.Control11 = New Control1
Me.SuspendLayout()
'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(12, 40)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(75, 23)
Me.Button1.TabIndex = 1
Me.Button1.Text = "Click Me"
Me.Button1.UseVisualStyleBackColor = True
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Location = New System.Drawing.Point(21, 9)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(41, 12)
Me.Label1.TabIndex = 2
Me.Label1.Text = "Label1"
'
'Control11
'
Me.Control11.Location = New System.Drawing.Point(36, 82)
Me.Control11.Name = "Control11"
Me.Control11.Size = New System.Drawing.Size(398, 166)
Me.Control11.TabIndex = 3
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 12.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(459, 260)
Me.Controls.Add(Me.Control11)
Me.Controls.Add(Me.Label1)
Me.Controls.Add(Me.Button1)
Me.Name = "Form1"
Me.Text = "Form1"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents Button1 As System.Windows.Forms.Button
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents Control11 As Control1
End Class
Public Class Control1
Inherits System.Windows.Forms.UserControl
Private mystring As String
Private mycolor As System.Drawing.Color
Private myImage As System.Drawing.Image
Public Property MyText() As String
Get
MyText = mystring
myname.Text = mystring
End Get
Set(ByVal value As String)
mystring = value
myname.Text = mystring
End Set
End Property
Public Property MyBackgroundImage() As Image
Get
MyBackgroundImage = myImage
mybackcolor.Image = myImage
End Get
Set(ByVal value As Image)
myImage = value
mybackcolor.Image = myImage
End Set
End Property
Private Sub Control1_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize
mybackcolor.Left = Me.Left
mybackcolor.Top = Me.Top + 10
mybackcolor.Width = Me.Width
mybackcolor.Height = Me.Height - 10
End Sub
End Class
_
Partial Class Control1
Inherits System.Windows.Forms.UserControl
'UserControl1 overrides dispose to clean up the component list.
_
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
_
Private Sub InitializeComponent()
Me.myname = New System.Windows.Forms.Label
Me.mybackcolor = New System.Windows.Forms.PictureBox
CType(Me.mybackcolor, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'myname
'
Me.myname.AutoSize = True
Me.myname.Location = New System.Drawing.Point(21, 15)
Me.myname.Name = "myname"
Me.myname.Size = New System.Drawing.Size(53, 12)
Me.myname.TabIndex = 0
Me.myname.Text = "Control1"
'
'mybackcolor
'
Me.mybackcolor.BackColor = System.Drawing.SystemColors.ActiveCaption
Me.mybackcolor.Location = New System.Drawing.Point(18, 42)
Me.mybackcolor.Name = "mybackcolor"
Me.mybackcolor.Size = New System.Drawing.Size(317, 141)
Me.mybackcolor.TabIndex = 1
Me.mybackcolor.TabStop = False
'
'Control1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 12.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.mybackcolor)
Me.Controls.Add(Me.myname)
Me.Name = "Control1"
Me.Size = New System.Drawing.Size(349, 200)
CType(Me.mybackcolor, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Public WithEvents myname As System.Windows.Forms.Label
Public WithEvents mybackcolor As System.Windows.Forms.PictureBox
End Class