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

Handle Hyperlink Click event after load from Database in C# 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 中处理点击事件。 请帮忙。

所以我找到了解决办法。我只添加如下代码到 richtextbox

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