The ErrorImagePadding property can be used to increase the amount of space between the error image and the right or left edge of the control with which it is associated. By default, there is no padding between the error image and the control.
The ErrorImagePadding property is not applicable when the entity being validated is an embeddable editor.
Imports Infragistics.Win Imports Infragistics.Win.Misc Imports System.Drawing Imports System.Drawing.Drawing2D Private Sub SetErrorImageProperties(ByVal ultraValidator As UltraValidator) ' Set the ErrorImageAlignment property to 'MiddleLeft' so that the ' error image appears on the left side, centered vertically. ultraValidator.ErrorImageAlignment = ErrorIconAlignment.MiddleLeft ' Set the ErrorImagePadding property to 5 so that there is a ' little space between the image and the control. ultraValidator.ErrorImagePadding = 5 ' Set the blink rate for the error image to 182 milleseconds, ' and the blink style to 'Always', so that the error image ' blinks quickly when an error occurs. ultraValidator.ErrorImageBlinkRate = 182 ultraValidator.ErrorImageBlinkStyle = ErrorImageBlinkStyle.Always ' Generate an image to be displayed when a validation error occurs, ' and use a smaller that usual size for a compact UI. Set the transparent ' color to Color.Transparent. Also, handle the Disposed event so we can ' properly dispose of the error image since we created it. Dim errorImageSize As Size = New Size(13, 13) ultraValidator.ErrorImageSize = errorImageSize ultraValidator.NotificationSettings.Image = Me.GenerateErrorImage(errorImageSize) ultraValidator.ErrorImageTransparentColor = Color.Transparent AddHandler ultraValidator.Disposed, AddressOf Me.ultraValidator_Disposed ' Set the notification action to 'Image'. ultraValidator.NotificationSettings.Action = NotificationAction.Image End Sub Private Function GenerateErrorImage(ByVal size As Size) As Bitmap Dim errorImage As Bitmap = New Bitmap(size.Width, size.Height) Dim bounds As Rectangle = New Rectangle(Point.Empty, size) Using gr As Graphics = Graphics.FromImage(errorImage) gr.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias Using brush As SolidBrush = New SolidBrush(Color.Red) gr.FillEllipse(brush, bounds) End Using bounds.Inflate(-3, -3) Using pen As Pen = New Pen(Color.White, 2.0F) gr.DrawLine(pen, bounds.Location, New Point(bounds.Right, bounds.Bottom)) gr.DrawLine(pen, New Point(bounds.Left, bounds.Bottom), New Point(bounds.Right, bounds.Top)) End Using End Using Return errorImage End Function Private Sub ultraValidator_Disposed(ByVal sender As Object, ByVal e As EventArgs) Dim ultraValidator As UltraValidator = sender Dim errorImage As Image = ultraValidator.NotificationSettings.Image If Not errorImage Is Nothing Then errorImage.Dispose() End Sub
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Text; using System.Windows.Forms; using Infragistics.Win; using Infragistics.Win.Misc; using System.Drawing; using System.Drawing.Drawing2D; private void SetErrorImageProperties( UltraValidator ultraValidator ) { // Set the ErrorImageAlignment property to 'MiddleLeft' so that the // error image appears on the left side, centered vertically. ultraValidator.ErrorImageAlignment = ErrorIconAlignment.MiddleLeft; // Set the ErrorImagePadding property to 5 so that there is a // little space between the image and the control. ultraValidator.ErrorImagePadding = 5; // Set the blink rate for the error image to 182 milleseconds, // and the blink style to 'Always', so that the error image // blinks quickly when an error occurs. ultraValidator.ErrorImageBlinkRate = 182; ultraValidator.ErrorImageBlinkStyle = ErrorImageBlinkStyle.Always; // Generate an image to be displayed when a validation error occurs, // and use a smaller that usual size for a compact UI. Set the transparent // color to Color.Transparent. Also, handle the Disposed event so we can // properly dispose of the error image since we created it. Size errorImageSize = new Size(13, 13); ultraValidator.ErrorImageSize = errorImageSize; ultraValidator.NotificationSettings.Image = this.GenerateErrorImage( errorImageSize ); ultraValidator.ErrorImageTransparentColor = Color.Transparent; ultraValidator.Disposed += new EventHandler( this.ultraValidator_Disposed ); // Set the notification action to 'Image'. ultraValidator.NotificationSettings.Action = NotificationAction.Image; } private Bitmap GenerateErrorImage( Size size ) { Bitmap errorImage = new Bitmap( size.Width, size.Height ); Rectangle bounds = new Rectangle( Point.Empty, size ); using ( Graphics gr = Graphics.FromImage(errorImage) ) { gr.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; using ( SolidBrush brush = new SolidBrush(Color.Red) ) { gr.FillEllipse( brush, bounds ); } bounds.Inflate( -3, -3 ); using ( Pen pen = new Pen(Color.White, 2f) ) { gr.DrawLine( pen, bounds.Location, new Point(bounds.Right, bounds.Bottom) ); gr.DrawLine( pen, new Point(bounds.Left, bounds.Bottom), new Point(bounds.Right, bounds.Top) ); } } return errorImage; } private void ultraValidator_Disposed(object sender, EventArgs e) { UltraValidator ultraValidator = sender as UltraValidator; Image errorImage = ultraValidator.NotificationSettings.Image; if ( errorImage != null ) errorImage.Dispose(); }
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2