在C#Richtext框中处理从数据库加载后的超链接单击事件

本文关键字:超链接 单击 事件 加载 数据库 C#Richtext 处理 | 更新日期: 2023-09-27 18:25:57

我将Richtextbox的文档添加到数据库中。文档有多个超链接。通过以下程序添加到此richtextbox的每个超链接:

        RichTextBox.IsDocumentEnabled = true;
        RichTextBox.IsReadOnly = true;
        Run run = new Run(RichTextBox.Selection.Text);
        Hyperlink hyp = new Hyperlink(run);
        WordMain main = new WordMain();
        hyp.Click += new RoutedEventHandler(main.hyperLink_Click);
        hyp.NavigateUri = new Uri("http://search.msn.com");
        RichTextBox.Cut();
        var container = new InlineUIContainer(new TextBlock(hyp), RichTextBox.Selection.Start);
        RichTextBox.IsDocumentEnabled = true;
        RichTextBox.IsReadOnly = false;

从数据库加载数据后,我无法在新的Richtextbox中处理点击事件。请帮帮我。

在C#Richtext框中处理从数据库加载后的超链接单击事件

所以我找到了解决方案。我只在richtextbox 中添加如下代码

        <RichTextBox.Resources>
            <Style TargetType="Hyperlink">
                <Setter Property="Cursor" Value="Hand" />
                <EventSetter Event="Click" Handler="hyperLink_Click" />
            </Style>
        </RichTextBox.Resources>