自定义WinForms ErrorProvider以在控件输入中显示其图标

25

我有一些自定义/用户控件,大多数情况下都有标签和输入框,例如:

已删除失效的ImageShack链接

有没有办法自定义标准WinForms ErrorProvider,使其在输入框(输入框-文本框、组合框、日期时间等)内显示其图标,像这样:

已删除失效的ImageShack链接

其中红色圆圈当然是错误指示器。

感谢任何帮助。

1个回答

55

我找到了一个解决方案:

this.errorProvider.SetIconPadding(this.textBox, -20);

errorProvider是一个ErrorProvider对象,textBox是一个Entry对象。


7
不确定这个解决方案有多好,但对我来说,魔术数字的一个可能解决方案是:errorProvider.Icon.Width + textBox.Bounds.Width - textBox.ClientRectangle.Width。当然,图标大小应该适合于textBox.Height,但这通常是情况(16x16图标,textBox默认高度为20)。 - Jonno

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接