2016-04-16 2 views
2

У меня есть TextBlock в моем приложении, в котором есть текст с некоторыми URL-адресами. В то же время я хочу, чтобы текст можно было выбирать и копировать. Если я использую элемент TextBox, я теряю возможность добавлять Hyperlink s, и если я использую TextBlock, я теряю функциональность выбора.WPF textblock, который позволяет выбирать текст

Имея все, что сказал, что вы предлагаете сохранить как гиперссылки, так и возможность выбора (с мышью и клавиатурой)?

Редактировать: это приложение является чат-приложением, и я хочу, чтобы входящее сообщение выбиралось, когда URL-адрес можно щелкнуть.

+1

Я думаю, что ['RichTextBox'] (https://msdn.microsoft.com/en-gb/library/system.windows.controls.richtextbox (v = vs.110) .aspx) - это то, что вы ищете для – dkozl

+0

@dkozl Спасибо за ваш ответ, я не знаю, как добавить гиперссылки в RichTextBox, в настоящее время в TextBlock. Я добавляю с помощью TextBlock.Inlines.Add для добавления гиперссылок. Я имею в виду, что я сделал google, но RichTextBox много отличается, может быть, я должен начать изучать это. –

ответ

0

Элемент управления Webbrowser позволяет выбирать текст и гиперссылки.

+0

Веб-браузер не является элементом редактирования текста, это веб-браузер. Я хочу текстовый элемент. –

+0

Текстовый блок не предназначен для редактирования текста. Он чисто отображает текст. Если вам нужно отредактировать текст, вам понадобится текстовое поле. – Chris

+0

Мне действительно нужно выбрать, а не редактировать. Мне нужно щелкнуть на гиперссылках и выборе текста. –

0

Вы можете сделать что-то вроде этого:

<Label> 
    <Hyperlink NavigateUri="[email protected]"> 
     <Run Text="[email protected]"/> 
    </Hyperlink> 
</Label> 

Вы можете стилизовать соответствующим образом и добавить команды Hyperlink, если вы действительно хотите перейти к этой ссылке при нажатии

3

Не уверен, но, возможно, вы можете использовать RichTextBox , См.: Adding hyperlink in textbox.

Вам нужно будет найти ссылки, когда пользователь наберет один и изменит текст в соответствии (вставка гиперссылки) с текстом пользователя. Или добавьте способ, например ContextualMenu, предложить пользователю добавить гиперссылку.

Я не уверен, что вы можете найти элемент управления, который сделает именно то, что вы хотите. Удачи!

Смежные вопросы