自定义 WinForms ErrorProvider 以在控件条目中显示其图标
Posted
技术标签:
【中文标题】自定义 WinForms ErrorProvider 以在控件条目中显示其图标【英文标题】:Customizing WinForms ErrorProvider to display its icon inside control's entry 【发布时间】:2010-11-11 03:52:07 【问题描述】:我有一些自定义/用户控件,在大多数情况下都有标签和条目,如下所示:
删除了无效的 ImageShack 链接
有什么方法可以自定义标准 WinForms ErrorProvider 以在条目中显示其图标(条目 - 文本框、组合、日期时间等...),如下所示:
删除了无效的 ImageShack 链接
红色圆圈当然是错误指示器。
感谢您的帮助。
【问题讨论】:
【参考方案1】:我找到了解决办法:
this.errorProvider.SetIconPadding(this.textBox, -20);
其中 errorProvider 是一个 ErrorProvider 对象,而 textBox 是一个 Entry 对象。
【讨论】:
不确定这有多好,但对我来说,神奇数字的一个可能解决方案是:errorProvider.Icon.Width + textBox.Bounds.Width - textBox.ClientRectangle.Width
。当然,图标大小应该适合textBox.Height
,但通常是这种情况(16x16 图标,textBox 默认高度为 20)以上是关于自定义 WinForms ErrorProvider 以在控件条目中显示其图标的主要内容,如果未能解决你的问题,请参考以下文章
添加列的自定义 WinForms DataGridView 问题