【问题标题】:Rich Text in ToolTip for C#C# 工具提示中的富文本
【发布时间】:2019-05-24 17:30:34
【问题描述】:

我可以扩展 ToolTip 并创建自己的 RichToolTip,但我不明白如何处理每行或每字的格式。我可以添加用户可以点击的控件吗?或图片等。

我遇到了RichTextBox,但这是用 C++ (MFC) 编写的,我想要一些用于 C# 的东西或可以与 C# 一起使用的东西。有什么建议么?有没有我可以使用的开源组件?

 public class RichToolTip : ToolTip
    {
    public RichToolTip()
    {
        this.OwnerDraw = true;
        this.Draw += new DrawToolTipEventHandler(OnDraw);
    }

    public RichToolTip(System.ComponentModel.IContainer Cont)
    {
        this.OwnerDraw = true;
        this.Draw += new DrawToolTipEventHandler(OnDraw);
    }
    private void OnDraw(object sender, DrawToolTipEventArgs e)
    {
        DrawToolTipEventArgs newArgs = new DrawToolTipEventArgs(e.Graphics,
                        e.AssociatedWindow, e.AssociatedControl, e.Bounds, e.ToolTipText.Substring(0, 5),
                        this.BackColor, this.ForeColor, new Font("Arial Unicode MS", 8.25f, FontStyle.Bold));
        newArgs.DrawBackground();
        newArgs.DrawBorder();
        newArgs.DrawText(TextFormatFlags.TextBoxControl);
    }
}

【问题讨论】:

标签: c# winforms tooltip richtextbox


【解决方案1】:

您可以使用this HTML renderer

【讨论】:

  • 太棒了!我仍然需要检查它是否有不错的性能。
  • 注意,这里和那里都有一些错误。 或
    不起作用.. HtmlToolTip 实例格式本身基于上次显示在工具提示中。不支持显示html内容。
  • @Kare:这些是无效的 HTML。它支持大多数 HTML 标签。
【解决方案2】:

这是更新版本的 HTML 渲染器 @SLaks - https://htmlrenderer.codeplex.com

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 2017-01-31
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    相关资源
    最近更新 更多