Sdílet prostřednictvím


Částečné metody (Visual Basic)

Částečné metody vývojářům vkládat vlastní logiku do kódu.Kód je obvykle součástí generovaném třídy.Částečné metody jsou definovány ve třídě částečné vytvořený Generátor kódu a se běžně používají k oznámení, že něco byl změněn.Umožňují vývojář určit vlastní chování v reakci na změnu.

Návrhář Generátor kódu definuje metodu podpisu a jeden nebo více volání metody.Vývojáři pak mohou implementace metody je možné přizpůsobit chování generovaný kód.Je k dispozici žádné provádění volání metody jsou odstraněny kompilátorem výsledkem další režii.

Prohlášení

Generovaný kód označí definice částečné metoda umístěním na klíčové slovo Partial na začátku řádku podpisu.

Partial Private Sub QuantityChanged()
End Sub

Definice musí splňovat následující podmínky:

  • Metoda musí být Sub, nikoli Function.

  • Základní text metody musí být prázdné.

  • Modifikátor přístupu musí být Private.

Implementace

Provedení se skládá především z vyplňování těla metody částečné.Provedení je obvykle umístěn v samostatné dílčí třídy z definice a zapsána vývojářem, který chce rozšířit do generovaného kódu.

Private Sub QuantityChanged()
'    Code for executing the desired action.
End Sub

Předchozí příklad duplicity podpisu v prohlášení přesně, ale jsou možné varianty.Zejména ostatní modifikátory lze přidat, jako například Overloads nebo Overrides.Pouze jeden Overrides Modifikátor je povoleno.Další informace o metodě modifikátory viz Příkaz Sub (Visual Basic).

Pomocí

Volání metody částečné jako by volání jiných Sub postup.Pokud metoda byla implementována, argumenty vyhodnoceny a je provedena základní text metody.Nezapomeňte však, že částečné metod je volitelné.Pokud metoda není implementována, volání na něj nemá žádný vliv a výrazy, které jsou předány jako argumenty metody nebudou vyhodnoceny.

Příklad

V souboru s názvem Product.Designer.vb, definovat Product třídy, která má Quantity vlastnost.

Partial Class Product

    Private _Quantity As Integer

    Property Quantity() As Integer
        Get
            Return _Quantity
        End Get
        Set(ByVal value As Integer)
            _Quantity = value
            QuantityChanged()
        End Set
    End Property

    ' Provide a signature for the partial method.
    Partial Private Sub QuantityChanged()
    End Sub
End Class

Do souboru s názvem Product.vb, zadejte implementaci pro QuantityChanged.

Partial Class Product

    Private Sub QuantityChanged()
        MsgBox("Quantity was changed to " & Me.Quantity)
    End Sub

End Class

Nakonec v metodě hlavní projekt deklarovat Product instance a zadat počáteční hodnotu pro jeho Quantity vlastnost.

Module Module1

    Sub Main()
        Dim product1 As New Product With {.Quantity = 100}
    End Sub

End Module

Okno se zprávou, zobrazí se tato zpráva zobrazí:

Quantity was changed to 100

Viz také

Referenční dokumentace

Příkaz Sub (Visual Basic)

Částečná (Visual Basic)

Koncepty

Procedury typu Sub (Visual Basic)

Volitelné parametry (Visual Basic)

Code Generation in LINQ to SQL

How to: Override Default Methods