我有這樣的過程:如何在此過程中將數組作爲參數傳遞?
''' <summary>
''' Append text to the current text.
''' </summary>
''' <param name="text">The text to append</param>
''' <param name="forecolor">The font color</param>
''' <param name="backcolor">The Background color</param>
''' <param name="font">The font of the text</param>
Public Sub Append_Text(ByVal text As String, _
ByVal forecolor As Color, _
Optional ByVal backcolor As Color = Nothing, _
Optional ByVal font As Font = Nothing)
Dim index As Int32 = MyBase.TextLength
MyBase.AppendText(text)
MyBase.SelectionStart = index
MyBase.SelectionLength = MyBase.TextLength - index
MyBase.SelectionColor = forecolor
If Not backcolor = Nothing Then MyBase.SelectionBackColor = backcolor
If font IsNot Nothing Then MyBase.SelectionFont = font
MyBase.SelectionStart = MyBase.TextLength
MyBase.SelectionLength = 0
End Sub
我所說的程序是這樣的:
RichTextLabel1.Append_Text("My ", Color.White, color.transparent, New Font("Arial", 12, FontStyle.Bold))
RichTextLabel1.Append_Text("RichText-", Color.White, , New Font("Arial", 12, FontStyle.Bold))
我的問題是,如果我可以過載(以及如何做修改)僅僅調用PROC一旦通過使用參數這樣的數組:
RichTextLabel1.Append_Text(_
{"My ", Color.White, Color.Transparent, New Font("Arial", 12, FontStyle.Bold)}, _
{"RichTextLabel", Color.White, Nothing, New Font("Arial", 16, FontStyle.Bold)})
(即一段代碼不工作明顯)
的唯一途徑做你所要求的是有一個二維或鋸齒狀的「對象」數組,所以不存在類型安全性。爲什麼要調用這個方法那麼糟糕?這已經夠好了。 –
@pswg感謝您的評論,只是我想簡化proc的用法,不要寫太多的代碼行,也不要調用過多的proc,也許我這次太樂觀了。要很難做這種修改,也許如果你能解釋我更多關於這個:「二維或鋸齒狀的對象陣列」 – ElektroStudios
看到我的答案。我試圖說明每個選項的用法,並詳細解釋它們的問題。 –