ProgressPanel Class
Represents a control showing an await message to a user.
Namespace: DevExpress.XtraWaitForm
Assembly: DevExpress.XtraEditors.v24.2.dll
NuGet Package: DevExpress.Win.Navigation
#Declaration
public class ProgressPanel :
BaseStyleControl,
ITransparentBackgroundManager,
ISupportLookAndFeel
#Remarks
The ProgressPanel is a control intended to show an await message to a user. It contains a wait indicator, a message caption and description.
Tip
If you need to display an await message in a separate window, use the Wait
The following properties affect the layout and appearance of the control’s caption, description and image:
- ProgressPanel.Caption and ProgressPanel.Description — specify the message caption and description, respectively (changing these properties does not automatically resize the control horizontally, you need to resize it manually). You can also localize the default caption (‘Please Wait’) and description (‘Loading…’) using the StringId.ProgressPanelDefaultCaption and StringId.ProgressPanelDefaultDescription values;
- ProgressPanel.ShowCaption and ProgressPanel.ShowDescription — allow you to hide the message caption and description;
- ProgressPanel.AppearanceCaption and ProgressPanel.AppearanceDescription — allow you to customize the appearance (font settings and the foreground color) of the message caption and description;
- ProgressPanel.CaptionToDescriptionDistance — specifies the vertical distance between the caption and description;
- ProgressPanel.AnimationToTextDistance — specifies the horizontal distance between the wait indicator and the message caption and description;
- ProgressPanel.ImageHorzOffset — specifies the horizontal distance between the control’s left edge and the wait indicator;
- ProgressPanel.ContentAlignment — specifies the alignment of the caption, description and wait indicator relative to the control;
- Visible — use this inherited property to specify the control visibility.
The ProgressPanel.WaitAnimationType property specifies the wait indicator type:
Default (depends on a skin)
Line
Ring
Bar
In the Default mode, the wait indicator is an animated image determined by the currently applied skin. See the Look And Feel and Skinning article to learn how to apply a skin to forms and controls.
In the Line, Ring and Bar modes, the wait indicator behavior and appearance can be specified using the following options:
- ProgressPanel.AnimationSpeed and ProgressPanel.AnimationAcceleration — specifies the speed and acceleration of wait indicators;
- ProgressPanel.AnimationElementCount — specifies the number of wait indicator visual elements;
- ProgressPanel.RingAnimationDiameter — specifies the diameter, in pixels, of the ring wait indicator;
- ProgressPanel.LineAnimationElementType and ProgressPanel.LineAnimationElementHeight — specifies the shape and height of the line indicator visual elements;
- ProgressPanel.BarAnimationElementLength, ProgressPanel.BarAnimationElementThickness and ProgressPanel.BarAnimationMotionType — specifies the length, thickness and motion type of the bar indicator.
#Tooltips
DevExpress controls support regular and super tooltips. Enable the ShowToolTips option to display tooltips when the mouse pointer hovers over the control.
Customize Regular Tooltip Text
Use the following properties of the target control to specify regular tooltip text and title:
API | Description |
---|---|
Specifies tooltip text. You can use line breaks in regular tooltips. | |
Specifies whether to parse HTML tags in text. | |
Specifies the tooltip title. If you do not specify tooltip text, the tooltip is not displayed even if you specify the title. |
The following code snippet specifies tooltip text and title for a TextEdit
editor:
public Form1() {
InitializeComponent();
textEdit1.ShowToolTips = true;
textEdit1.ToolTipTitle = "Name";
textEdit1.ToolTip = "Please enter your name";
}
Assign an Image to Regular Tooltips
Use the control’s ToolTipIconType property to assign a predefined icon. The ToolTipController.IconSize property specifies icon size.
Assign a custom image as follows:
- Create a ToolTipController and assign it to the control’s ToolTipController property.
- Create an image collection and assign it to the ToolTipController.ImageList property.
- Handle the ToolTipController.BeforeShow event. Use the e.ImageOptions parameter to assign a raster or vector image to the tooltip.
Note
The Tool
property has priority over e.
. If you assign a custom image, set Tool
to None
.
The following code snippet assigns a custom image to the TextEdit
tooltip:
Note
text
, tool
, and svg
were created at runtime.
public Form1() {
InitializeComponent();
textEdit1.ShowToolTips = true;
textEdit1.ToolTipTitle = "Name";
textEdit1.ToolTip = "Please enter your name";
textEdit1.ToolTipController = toolTipController1;
toolTipController1.ImageList = svgImageCollection1;
toolTipController1.BeforeShow += ToolTipController1_BeforeShow;
}
private void ToolTipController1_BeforeShow(object sender, ToolTipControllerShowEventArgs e) {
ToolTipController controller = sender as ToolTipController;
if (e.ToolTip == textEdit1.ToolTip)
e.ImageOptions.SvgImage = (controller.ImageList as SvgImageCollection)["personalCard"];
}
Display a Super Tooltip
Use the control’s SuperTip property to assign a super tooltip. If you wish to use HTML tags in a super tooltip, enable the SuperToolTip.AllowHtmlText property.
Setting the ToolTipController.ToolTipType property to SuperTip converts existing regular tooltips to super tooltips.
Tip
Read the following help topic for information on how to customize super tooltips: Hints and Tooltips.