我尝试了下面的代码,但是它抛出异常System.ArgumentException
异常消息是:


  值不在预期范围内。


public void InsertLink(RichEditBox control)
{
    control.Document.Selection.Link ="http://www.bing.com";
}

最佳答案

它包含的文本必须用引号引起来,并可选地在前哨字符0xFDDF之前。例如:“ http://www.msn.com”或0xFDDF“ http://www.msn.com”。


您可以从MSDN source获得更多详细信息。

因此,您需要像下面这样更改代码:

<StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <RichEditBox x:Name="richeditbox" Height="200">
    </RichEditBox>
    <Button Content="Convert to hypelink" Click="Button_Click"></Button>
</StackPanel>


private void Button_Click(object sender, RoutedEventArgs e)
{
    richeditbox.Document.Selection.Link = "\"http://www.bing.com\"";
}

关于c# - 如何将选定的文本转换为RichEditBox中的超链接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41717420/

10-09 20:14