ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#-UWP RichEditBox:如何为加载的RTF文件启用HyperLinks(Document.LoadFromStream)

2019-11-11 09:05:24  阅读:298  来源: 互联网

标签:rtf uwp hyperlink xaml c


XAML:

<ScrollViewer x:Name="RtfEulaViewer" Grid.Row="1" VerticalAlignment="Top">
    <RichEditBox x:Name="RtfEula" IsHitTestVisible="False" IsFocusEngagementEnabled="False" IsReadOnly="True" 
         Background="{ThemeResource StandardBackground}" BorderThickness="0" TextWrapping="Wrap" />
</ScrollViewer>

码:

StorageFile file = await StorageFile.GetFileFromPathAsync(filePath);
IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.Read);
this.RtfEula.Document.LoadFromStream(TextSetOptions.FormatRtf, stream);

RTF文件中由Word或写字板打开时可单击的绝对或相对HyperLink,仅显示为普通文本.

{\field{\*\fldinst HYPERLINK "http://www.microsoft.com"}{\fldrslt Microsoft}}

RTF规范中的“蓝色”显示为蓝色,但也处于无效状态.如果我将鼠标指针移到上面,它不会改变.

加载RTF文件时,是否可以在某些文本框中获取活动的HyperLink?

解决方法:

在代码中,您设置了IsHitTestVisible =“ False”.这将禁用所有输入交互.这就是为什么您的超级链接不可点击的原因.删除此设置或将其值更改为True应该可以解决您的问题.

<RichEditBox x:Name="RtfEula" IsFocusEngagementEnabled="False" IsReadOnly="True" 
     Background="{ThemeResource StandardBackground}" BorderThickness="0" TextWrapping="Wrap" />

标签:rtf,uwp,hyperlink,xaml,c
来源: https://codeday.me/bug/20191111/2019001.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有