Содержимое ярлыка WPF: как избежать ссылки на Alt Key? - PullRequest
0 голосов
/ 15 декабря 2010

Я определил метку WPF с content = "Label_Label" . Во время отображения отображается «LabelLabel ». Первый "_" рассматривается для «Alt Key» Ссылка. В моем реальном требовании я назначаю Контент для Label динамически, поэтому, пожалуйста, укажите решение этой проблемы.

<Label Content="Label_Label" Height="28" HorizontalAlignment="Left" Margin="73,42,0,0" Name="label1" VerticalAlignment="Top" Width="88" UseLayoutRounding="False" ClipToBounds="False" />

Ответы [ 3 ]

4 голосов
/ 15 декабря 2010

Если вы привязываете содержимое вашей метки к некоторым данным и не можете «избежать» подчеркивания в данных (согласно ответу mwtb), тогда другой вариант - заключить текст в TextBlock внутри метки.TextBlocks не имеют понятия ключа доступа, поэтому они будут отображать текст как есть.

Итак, вместо этого:

<Label Content="{Binding MyText}" />

Вы можете сделать это:

<Label><TextBlock Text="{Binding MyText}" /></Label>

Предполагая, что «MyText» содержит строку «Hello_World», первая будет отображать HelloWorld, а вторая - Hello_World.

Обновление

Согласно вашему комментариюто же самое в коде:

var tb = new TextBlock();
tb.SetBinding(TextBlock.TextProperty, new Binding("MyText"));
var label = new Label
{
    Content = tb
};

Это не проверено, но должно работать.Очевидно, что тогда вам нужно будет добавить «ярлык» к вашему визуальному дереву обычным способом.

2 голосов
/ 15 декабря 2010

Вы можете избежать подчеркивания, используя два подряд:

Content="Label__Label"

Я не уверен, какой дополнительный вопрос вы подразумеваете под "В моем реальном требовании я динамически назначаю Контент метке"

1 голос
/ 15 декабря 2010

Честно говоря, единственная разница между Label и ContentControl заключается в том, что Label позволяет использовать ключ доступа.Если вам не нужна функция ключа доступа, просто используйте ContentControl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...