Public Class Form1 Private xproperties As PreferenceProperties Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load xproperties = New PreferenceProperties PropertyGrid1.SelectedObject = xproperties End Sub End Class Public Class PreferenceProperties Private DBDetails As DatabaseProperties Public Sub New() DBDetails = New DatabaseProperties End Sub <Category("Connection")> _ <Description("")> _ <DisplayName("Database Properties")> _ Public Property Database() As DatabaseProperties Get Return DBDetails End Get Set(ByVal value As DatabaseProperties) DBDetails = value End Set End Property End Class Public Class DatabaseProperties Private DBHost As String Private DBPort As Integer Private DBUser As String Private DBName As String Private DBPass As String Public Sub New() Me.DBHost = String.Empty Me.DBPort = 3306 Me.DBUser = String.Empty Me.DBName = String.Empty Me.DBPass = String.Empty End Sub <Category("Connection")> _ <Description("Host Name/IP address of the server where the database resides.")> _ <DefaultValue(GetType(String), "")> _ <DisplayName("Host Address")> _ <Browsable(True)> _ <ReadOnlyAttribute(False)> _ Public Property HostName() As String Get Return Me.DBUser End Get Set(ByVal value As String) Me.DBUser = value End Set End Property <Category("Connection")> _ <Description("The name of the database that you will be connected.")> _ <DefaultValue(GetType(String), "")> _ <DisplayName("Database Name")> _ <Browsable(True)> _ <ReadOnlyAttribute(False)> _ Public Property DatabaseName() As String Get Return Me.DBName End Get Set(ByVal value As String) Me.DBName = value End Set End Property <Category("Connection")> _ <Description("Port number that the database server is using. The default is 3306.")> _ <DefaultValue(GetType(Integer), "3306")> _ <DisplayName("Port Number")> _ <Browsable(True)> _ <ReadOnlyAttribute(False)> _ Public Property PortNumber() As Integer Get Return Me.DBPort End Get Set(ByVal value As Integer) Me.DBPort = value End Set End Property <Category("Security")> _ <Description("User name to be use in connecting the server.")> _ <DefaultValue(GetType(String), "")> _ <DisplayName("UserName")> _ <Browsable(True)> _ <ReadOnlyAttribute(False)> _ Public Property UserName() As String Get Return Me.DBUser End Get Set(ByVal value As String) Me.DBUser = value End Set End Property <Category("Security")> _ <Description("Password to be use in connecting the server.")> _ <DefaultValue(GetType(String), "")> _ <DisplayName("Password")> _ <Browsable(True)> _ <PasswordPropertyText(True)> _ <ReadOnlyAttribute(False)> _ Public Property Password() As String Get Return Me.DBPass End Get Set(ByVal value As String) Me.DBPass = value End Set End Property End Class
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)