Sdílet prostřednictvím


S...Na konci příkazu (Visual Basic)

Spustí řada příkazů opakovaně odkazuje na jeden objekt nebo struktury.

With object
    [ statements ]
End With

Části

Termín

Definice

expression

Povinné.Výraz vyhodnocen jako objekt.Výraz může být libovolně složité a je vyhodnocena pouze jednou.Výraz lze vyhodnotit na libovolný datový typ, základní typy.

statements

Nepovinné.Jeden nebo více příkazů mezi With a End With , mohou odkazovat na členy objekt vytvořený hodnocení expression.

End With

Povinné.Ukončí definici With bloku.

Poznámky

Pomocí With...End With, řada příkazů lze provádět na zadaný objekt bez zadání názvu objektu vícekrát.V rámci With bloku, můžete určit členského objektu počínaje obdobím, jako With objekt příkazu předchází ji.

Změnit více vlastností jednoho objektu, například umístit příkazy přiřazení vlastnosti uvnitř With...End With blok odkazující na objekt pouze jednou namísto jednou pro každou vlastnost přiřazení.

Pokud váš kód přistupuje k stejný objekt do více příkazů, získat následující výhody pomocí With prohlášení:

  • Není nutné vyhodnotit složitý výraz vícekrát nebo výsledek přiřadit dočasnou proměnnou odkazovat vícekrát jeho členů.

  • Je čitelnost kódu odstraněním opakovaných opravňující výrazy.

Datový typ expression může být libovolné třídy nebo struktury typ nebo dokonce Visual Basic elementární jako Integer.

expression Je vyhodnocen jednou, při vstupu do bloku.Nelze přiřadit expression v rámci With bloku.

V rámci With blok, metody a vlastnosti zadaný objekt můžete přístup bez jejich zařazení.Můžete použít metody a vlastnosti jiné objekty, ale je třeba zařadit s jejich názvy objektů.

Můžete umístit jeden With...End With v rámci jiného příkazu.Vnořené With...End With příkazy mohou být matoucí, pokud nejsou objekty, které odkazují na Vymazat z kontextu.Je nutné zadat plně kvalifikovaný odkaz na objekt, který je ve vnější With blokovat při odkazování z objektu v rámci vnitřní With bloku.

Nelze větví do With bloku z mimo blok.

Pokud blok obsahuje smyčku, příkazy spustit pouze jednou.Můžete vnořovat ovládací struktury různých druhů.Další informace naleznete v tématu Vnořené struktury řízení (Visual Basic).

[!POZNÁMKA]

Můžete použít With klíčové slovo v objektu také inicializátory.Další informace a příklady naleznete v Inicializátory objektů: Pojmenované a anonymní typy (Visual Basic) a Anonymní typy (Visual Basic).

Pokud používáte With blok pouze inicializovat vlastnosti nebo pole objekt, který jste právě vytvořena, zvažte použití inicializátor objektu místo.

Příklad

V následujícím příkladu každý With blok provede řadu příkazů na jediný objekt.

Private Sub AddCustomer()
    Dim theCustomer As New Customer

    With theCustomer
        .Name = "Coho Vineyard"
        .URL = "http://www.cohovineyard.com/"
        .City = "Redmond"
    End With

    With theCustomer.Comments
        .Add("First comment.")
        .Add("Second comment.")
    End With
End Sub

Public Class Customer
    Public Property Name As String
    Public Property City As String
    Public Property URL As String

    Public Property Comments As New List(Of String)
End Class

Následující příklad vnoří With…End With příkazy.V rámci vnořených With syntaxe příkazu, odkazuje na vnitřní objekt.

Dim theWindow As New EntryWindow

With theWindow
    With .InfoLabel
        .Content = "This is a message."
        .Foreground = Brushes.DarkSeaGreen
        .Background = Brushes.LightYellow
    End With

    .Title = "The Form Title"
    .Show()
End With

Viz také

Referenční dokumentace

List<T>

Koncepty

Vnořené struktury řízení (Visual Basic)

Inicializátory objektů: Pojmenované a anonymní typy (Visual Basic)

Anonymní typy (Visual Basic)