c# - 在 WPF 中返回可点击的超链接表单转换器
问题描述
我的文本块上有一个 IMultiValueConveter,它可以返回字符串、双精度值等。在某些情况下,转换器可以获得一个包含网站地址的字符串。我现在为了测试目的而保持简单,当我得到一个以 http 或 https 开头的字符串时,我想返回一个可在 UI 中单击的超链接,但我不知道如何使它工作。
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
var valueOwner = values[0] as ValueOwner;
if (valueOwner.Value is string)
{
var valueOwnerstring = valueOwner.Value.ToString();
if (valueOwnerstring.Contains("https") || valueOwnerstring.Contains("http"))
{
//var run = new Run(valueOwnerstring);
//var hyperlink = new Hyperlink(run);
//var navigateUri = hyperlink.NavigateUri;
// return navigateUri;
var uri = new Uri(valueOwnerstring);
return uri.AbsoluteUri;
}
}
return string.Format("{0} {1}", valueOwner.Value);
}
解决方案
推荐阅读
- javascript - 防止 `document.execCommand("copy")` 替换 & 符号
- r - 在 renderTable 中自定义标题并使其具有反应性 R Shiny
- reactjs - 提交表单时未从默认值设置状态值
- ruby-on-rails - 当我从未明确调用它时,为什么我的实例变量会显示在视图上?
- python - 如何使用openpyxl更改图片大小
- c++ - 以与另一个列表相反的顺序创建第二个单链表
- java - 将值动态注入到 Javadoc 注释中
- desktop - 2 月 11 日升级 manjaro 后,nemo 无法启动
- r - 如何删除R中斜线之间的所有单词?
- loops - 在循环中使用 Ansible 中的 when 条件查找并使用第一个匹配项