テキストボックスにはリンクが含まれています。テキストの内容は実行時に生成されます。私の問題は、テキスト内のリンクがクリックできないことですテキストブロック内のすべてのリンクがクリック可能なので、リンクをタップするとWebブラウザが開きます。アンドロイドでは、autolink.Isを使用して設定できます。このようなオプションはwp7またはwp7.1 mangoで利用できますか?wp7でクリック可能なテキストブロックのリンクを設定する方法
6
A
答えて
12
HyperLinkを使用してください。
これは、Windows Phone 7.1(マンゴー)からサポートされています。
必要に応じて、実行時に自分のデータから独自のFlowDocumentを作成できます。文字列からFlowDocumentを生成する方法について
例:Silverlightのリッチテキストボックスcontolで
private void OnMessageReceived(string message)
{
var textBlock = new RichTextBox()
{
TextWrapping = TextWrapping.Wrap,
IsReadOnly = true,
};
var paragraph = new Paragraph();
var runs = new List<Inline>();
foreach (var word in message.Split(' '))
{
Uri uri;
if (Uri.TryCreate(word, UriKind.Absolute, out uri) ||
(word.StartsWith("www.") && Uri.TryCreate("http://" + word, UriKind.Absolute, out uri)))
{
var link = new Hyperlink();
link.Inlines.Add(new Run() { Text = word });
link.Click += (sender, e) =>
{
var hyperLink = (sender as Hyperlink);
new WebBrowserTask() { Uri = uri }.Show();
};
runs.Add(link);
}
else
{
runs.Add(new Run() { Text = word });
}
runs.Add(new Run() { Text = " "});
}
foreach (var run in runs)
paragraph.Inlines.Add(run);
textBlock.Blocks.Add(paragraph);
MessagesListBox.Children.Add(textBlock);
MessagesListBox.UpdateLayout();
}
2
これを行う機能はありません。
テキスト(リンクを含む)がHTMLの場合、WebBrowserコントロールに表示することができます。
そうでない場合は、テキストを解析して自分でリンクを構築する必要があります。 (WrapPanel内のTextBlocksとHyperlinkButtonの組み合わせはおそらくこれを行う方法です)。
+0
もうハイパーリンクボタンを使用する理由はありません;-) –
2
はあなたを助けることができます。
<RichTextBox>
<Paragraph>
<Run Text="This have to navigate me to Google: "/>
<Hyperlink NavigateUri="http://google.com" TargetName="_blank">google.com</Hyperlink>
</Paragraph>
</RichTextBox>
+0
Perfect - ありがとう! –
関連する問題
- 1. WP7 Silverlight:クリック可能なテキストブロック内のリンクを作成するには?
- 2. アンドロイドで展開可能なリストビューのテキストビューでクリック可能なリンクを設定する方法は?
- 3. Java-Androidでクリック可能なリンクを設定する
- 4. HTMLでクリック可能なオブジェクトにリンクを設定します
- 5. 電子メールでクリック可能なリンクを設定します。
- 6. UITextViewでクリック可能なリンクを作成する方法
- 7. JEditorPaneでクリック可能なリンクを表示する方法
- 8. UITextViewでクリック可能なリンクを表示する方法
- 9. GWTでクリック可能なリンクを作成する方法は?
- 10. 画像のセクションをクリック可能なリンクにする方法
- 11. VisualStudioでクリック可能なリンクを含める方法QuickInfo
- 12. 交換可能なクリック可能なリンク
- 13. 他のウェブ要素でリンクを決定する方法は、クリック可能です
- 14. ハイパーリンクのクリック可能なリンク
- 15. PagerAdapterのクリック可能なリンク
- 16. Install4j設定可能なフォームテキストフィールドで右クリック
- 17. クリック可能なリンクを作成する
- 18. LongClick textView、クリック可能なリンク
- 19. カスタムリストビュー内のテキストビューでクリック可能なリンクを持ち、クリック可能なリストビューを持つ方法
- 20. Android TextView - クリック可能なリンクとクリック可能な表示
- 21. ベロシティテンプレートでクリック可能なリンクを表示
- 22. android - 私のテキストをクリック可能にする方法(URLリンク)
- 23. mailappスクリプトでクリック可能なリンク
- 24. dropzoneでクリック可能な初期設定オプションを使用する
- 25. GTK +でクリック可能なアイコンと試しアイコンを設定する
- 26. 入力フィールド内でクリック可能なリンクを表示する方法 - angularjs
- 27. グリッド内で、テキストブロックの幅を設定する方法
- 28. ハイチャートのツールチップ内のクリック可能なリンク
- 29. Microsoft Edge - 無効なリンクをクリック可能
- 30. ダイアログ内のクリック可能なリンク
完全な例で更新されました。 –
私は7.1を使用していますが、このxamlは私のためにコンパイルされません。 – Nathan
まず、 'ハイパーリンク'、 'l'は小文字でなければなりません。次に、私は7.1プロジェクトでコンパイルするxamlコードを取得できません。 –