Έχω γράψει τον εξής κώδικα:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| Public Sub doRemoveSkin(ByVal frm As frmMain)
With frm
.BackgroundImage = Nothing
.mniFileMenu.ForeColor = SystemColors.ControlText
.mniActionsMenu.ForeColor = SystemColors.ControlText
.mniHelpMenu.ForeColor = SystemColors.ControlText
.mniLinksMenu.ForeColor = SystemColors.ControlText
.mniSettingsMenu.ForeColor = SystemColors.ControlText
For Each MainCtrl As Control In .Controls
If TypeOf MainCtrl Is Button Then
DirectCast(MainCtrl, Button).Image = Nothing
DirectCast(MainCtrl, Button).ForeColor = SystemColors.ControlText
ElseIf TypeOf MainCtrl Is Label Then
DirectCast(MainCtrl, Label).ForeColor = SystemColors.ControlText
ElseIf TypeOf MainCtrl Is GroupBox Then
DirectCast(MainCtrl, GroupBox).ForeColor = SystemColors.ControlText
For Each ctrl As Control In DirectCast(MainCtrl, GroupBox).Controls
If TypeOf ctrl Is Button Then
DirectCast(ctrl, Button).Image = Nothing
DirectCast(ctrl, Button).ForeColor = SystemColors.ControlText
ElseIf TypeOf ctrl Is Label Then
DirectCast(ctrl, Label).ForeColor = SystemColors.ControlText
End If
Next
End If
Next
End With
End Sub
End Module |
Ο κώδικας αυτός επαναφέρει στα αρχικά δεδομένα οτιδήποτε μπορεί να έχω αλλάξει σε μια φόρμα σε οποιοδήποτε πρόγραμμα μου.
Θέλω να αλλάξω το ByVal frm As frmMain) σε "As Form" αλλά έχω πρόβλημα με το μενού.
Έχω ένα κύριο μενού, και μέσα κάποια μενού items. Είδα λοιπόν ότι αυτά είναι ToolStripMenuItem αλλά δεν είναι μέσα στα controls! και δεν μπορώ να γράψω κάτι του τίπου:
1
2
3
4
| For Each MainCtrl As Control In .Controls
If TypeOf MainCtrl Is ToolStripMenuItem Then
End If |
Οπότε αναγκαστικά τα κάνω manually
1
2
3
4
5
| .mniFileMenu.ForeColor = SystemColors.ControlText
.mniActionsMenu.ForeColor = SystemColors.ControlText
.mniHelpMenu.ForeColor = SystemColors.ControlText
.mniLinksMenu.ForeColor = SystemColors.ControlText
.mniSettingsMenu.ForeColor = SystemColors.ControlText |
και οπότε το frm μένει σε As frmMain.
Πως να κάνω να βλέπει όλα τα menu?
δοκίμασα μπας και υπήρχε το For Each mni as ToolStripMenuItems (έβαλα "s" στο τέλος, όπως στα controlS), αλλά δεν υπάρχει........