Hyperlink with Navigation in a Richtextbox

2019-08-23 11:42发布

问题:

How would I put a hyperlink with Navigation in a Richtextbox? Right now I have the following and it gives me this error: "XAMlParseException was unhandled"

xaml

<Page x:Class="SafeModeLiabilityAgreement"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      mc:Ignorable="d" 
      d:DesignHeight="300" d:DesignWidth="500"
      Title="SafeModeLiabilityAgreement" FontFamily="Comic Sans MS">
    <Grid Background="White">


        <RichTextBox Margin="20,40,20,0" Name="RichTextBox1" VerticalAlignment="Top" Height="194" VerticalScrollBarVisibility="Auto" >

            <FlowDocument>

                <Paragraph>
<LineBreak/>

                    <Hyperlink Foreground="Blue" NavigateUri="http://www.youtube.com/watch?v=rb3nY6avD8k" RequestNavigate="Hyperlink_RequestNavigate">
                        How to manualy turn on/off safemode ?
                    </Hyperlink>


                </Paragraph>




            </FlowDocument>

        </RichTextBox>

    </Grid>
</Page>

VB.net

Public Class SafeModeLiabilityAgreement
   Private Sub Hyperlink_RequestNavigate(ByVal sender As Object, ByVal e As RequestNavigateEventArgs)
        Process.Start(New ProcessStartInfo(e.Uri.AbsoluteUri))
        e.Handled = True
    End Sub

End Class

回答1:

try changing your paragraph to this

<Paragraph>
   <LineBreak/>
      <TextBlock>
         <Hyperlink Foreground="Blue" NavigateUri="http://www.youtube.co/watch?v=rb3nY6avD8k"   RequestNavigate="Hyperlink_RequestNavigate">
                        How to manualy turn on/off safemode ?
         </Hyperlink>
      </TextBlock>

</Paragraph>