让Silverlight的文本块表现得像超链接

4

我对Silverlight还比较陌生。我有一个文本块显示在DataGrid中(确切地说是在DataGridTemplateColumn.CellTemplate模板中)。

我想动态地将一些文本块变成超链接,以打开新窗口。

有没有办法实现这个功能?到目前为止,我能想到的唯一方法是使用超链接按钮,并尝试将其样式设置成文本块的样式。

非常感谢任何帮助。

1个回答

2
HyperlinkButton是一个ContentControl,因此它实际上可以采用某种预先样式化的TextBlock(或其他控件)作为其内容(而不仅仅使用简单的字符串作为Content)。
<HyperlinkButton NavigateUri="http://myurl.com">
    <TextBlock Text="My Link Text" Foreground="Black" />
</HyperlinkButton>

如果您想要自定义超链接按钮的样式,例如去掉默认的青色焦点框等,那么您需要使用自定义的超链接按钮模板。此外,如果您正在尝试以某种动态方式设置它们,并且希望在任何不是实际链接的单元格上禁用链接行为,那么您还可以将超链接按钮的IsEnabled属性设置为false。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接