1

我想为 WPF RichTextBox 中的超链接创建简单的“延迟加载工具提示”。

我使用 Popup 控件执行此操作,如下所示:

    private Popup popup;
    private void Hyperlink_MouseEnter(object sender, MouseEventArgs e)
    {
        Hyperlink hyper = sender as Hyperlink;
        popup = new Popup();
        popup.Child = new Label() { Content = "content of the popup" };
        popup.IsOpen = true;
        var pos = e.GetPosition(richTextBox);
        popup.Placement = PlacementMode.RelativePoint;
        popup.PlacementTarget = richTextBox;
        popup.HorizontalOffset = pos.X;
        popup.VerticalOffset = pos.Y + 30;
    }

为此,我必须测量给定超链接元素的高度(以像素为单位),因此我可以用正确的值替换这个“30”常数。

有没有办法测量 WPF 中超链接的高度?

4

1 回答 1

1

您将要测量字体高度 Font.Height,然后将其与元素的基本位置一起使用来确定放置工具提示的高度

于 2012-08-02T18:41:22.413 回答