【发布时间】:2012-10-19 04:55:39
【问题描述】:
我正在向 TextBlock 添加内联。 Run() 内联工作。当然,由于某种原因,Windows 8 中不推荐使用 Hyperlink()(使用 Windows.UI.Xaml.Documents),所以我尝试使用 C# 将 HyperlinkButton 封装在 InlineUIContainer 中。我知道这个概念是合理的,但我的代码失败了。
如果我注释掉“使用 Windows.UI.Xaml.Documents;”这一行然后我让两个周围的内联显示在我的 ListView 中(它使用下面的方法。)如果未注释此行,则 Inlines.Add for 'link' 正在抛出。我做错了什么?
public TextBlock enrichPostText(anFullPost post) { TextBlock text_block = new TextBlock(); text_block.Inlines.Clear();
var holdText = new Run();
holdText.Text = "Test start >> ";
text_block.Inlines.Add(holdText);
HyperlinkButton linkButton = new HyperlinkButton();
linkButton.NavigateUri = new Uri("http://www.cones.net");
linkButton.Content = "click me";
linkButton.Name = "_blank";
InlineUIContainer link = new InlineUIContainer();
link.Child = linkButton;
text_block.Inlines.Add(link);
var holdText2 = new Run();
holdText2.Text = " << end test.";
text_block.Inlines.Add(holdText2);
return (text_block);
}
【问题讨论】:
-
注意:如果我注释掉这一行:text_block.Inlines.Add(link);然后其他内联工作,我可以看到 ListViewItems。
-
我收到以下错误:WinRT 信息:E_NETWORK_ERROR
标签: c# windows-8 microsoft-metro inlines