Udostępnij za pośrednictwem


Jak utworzyć formant z kluczem dostępu i zwijaniem tekstu

W tym przykładzie pokazano, jak utworzyć kontrolkę z kluczem dostępu i obsługiwać zawijanie tekstu. W przykładzie użyto kontrolki Label do zilustrowania tych pojęć.

Przykład

Dodawanie zawijania tekstu do etykiety

Kontrolka Label nie obsługuje zawijania tekstu. Jeśli potrzebujesz etykiety, która opakowuje się w wiele wierszy, możesz zagnieżdżać inny element, który obsługuje zawijanie tekstu i umieścić element wewnątrz etykiety. W poniższym przykładzie pokazano, jak za pomocą elementu utworzyć TextBlock etykietę, która opakowuje kilka wierszy tekstu.

<Label Width="200" HorizontalAlignment="Left">
  <TextBlock TextWrapping="WrapWithOverflow">
    A long piece of text that requires text wrapping
    goes here.
  </TextBlock>
</Label>

Dodawanie klucza dostępu i zawijania tekstu do etykiety

Jeśli potrzebujesz Label klucza dostępu (mnemonic), użyj AccessText elementu, który znajduje się wewnątrz Labelelementu .

Kontrolki, takie jak Label, , MenuItemCheckBoxRadioButtonTabItemButtonExpander, i GroupBox mają domyślne szablony kontrolek. Te szablony zawierają element ContentPresenter. Jedną z właściwości, które można ustawić na obiekcie ContentPresenter jest RecognizesAccessKey="true", których można użyć do określenia klucza dostępu dla kontrolki.

W poniższym przykładzie pokazano, jak utworzyć obiekt Label z kluczem dostępu i obsługiwać zawijanie tekstu. Aby włączyć zawijanie tekstu, przykład ustawia TextWrapping właściwość i używa znaku podkreślonego w celu określenia klucza dostępu. (Znak, który natychmiast następuje po znaku podkreśleniu, jest kluczem dostępu).

<TextBox Name="textBox1" Width="50" Height="20"/>
<Label Width="200" HorizontalAlignment="Left"
       Target="{Binding ElementName=textBox1}">
  <AccessText TextWrapping="WrapWithOverflow">
    _Another long piece of text that requires text wrapping
    goes here.
  </AccessText>
</Label>

Zobacz też