C# 工具提示中的富文本
我可以扩展 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);
}
}
I can extend the ToolTip and create my own RichToolTip but I don't understand how I can handle formatting per line or Per word. Can I add controls which a user can click on ? or images etc.
I came across RichTextBox but this is written in C++ (MFC) & I want something for C# or something which I can use with C#. Any suggestions? Are there any open source components which I can use?
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);
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用此 HTML 渲染器。
You can use this HTML renderer.
这是 HTML 渲染器 @SLaks 的新版本 - https://htmlrenderer.codeplex.com
This is the newer version of HTML renderer @SLaks - https://htmlrenderer.codeplex.com