我正在爲VB.NET表單應用程序編寫一個名爲FormTheme
的主題類。它包含可在運行時應用以形成控件的配色方案信息。目前有三種方式實例化對象:VB.NET - 在一個類中提供預定義的創建設置
Public Sub New()
使用默認系統顏色創建一個新主題。
Public Sub New(ByVal ForeColor As Color, _
ByVal BackColor As Color, _
ByVal BorderColor As Color ...)
用提供的顏色創建一個新主題。
Public Sub New(ByRef ExistingTheme As FormTheme)
通過對現有主題進行「深層複製」來創建新主題。
我想提供第四選項,用於創建基於預定義設置一個主題,例如:
Public Sub New(ByVal scheme As ColorScheme)
'usage: Dim myTheme As New FormTheme(ColorScheme.Night)
想知道什麼是執行此操作的最佳方法是什麼?使用視爲Enum
,並在構造函數中主題Select Case
聲明基於枚舉值,這肯定會工作:
Enum ColorScheme
Day
Night
City
Candy
...
End Enum
Public Sub New(ByVal scheme as ColorScheme)
Select scheme
Case ColorScheme.Day
'Set colors
Case ColorScheme.Night
'Set colors
Case ColorScheme.City
'Set colors
...
End Select
End Sub
之前,我銳意進取,是否有這樣做的更標準的或「更好」的方式?
這似乎是一個非常有效的方法 – Steve 2013-05-03 09:21:09