バージョン

UltraStatusPanel クラス

UltraStatusBar コントロールの1つのセクションを表します。
シンタックス
'宣言
 
Public Class UltraStatusPanel 
   Inherits Infragistics.Shared.KeyedSubObjectBase
   Implements Infragistics.Shared.IKeyedSubObject, Infragistics.Shared.IKeyedSubObjectEx, Infragistics.Win.Notifications.INotificationBadgeProvider, Infragistics.Win.Notifications.INotificationBadgeSettingsOwner 
public class UltraStatusPanel : Infragistics.Shared.KeyedSubObjectBase, Infragistics.Shared.IKeyedSubObject, Infragistics.Shared.IKeyedSubObjectEx, Infragistics.Win.Notifications.INotificationBadgeProvider, Infragistics.Win.Notifications.INotificationBadgeSettingsOwner  
解説

UltraStatusPanel は、StatusBar の最も一般的な使用を表す 13 のカスタム スタイルをサポートします。

多くのプロパティはすべてのパネル スタイルに適用しますが、一部のプロパティは Style が特定の値に設定される場合に限って使用されます。たとえば、CharacterPositionFormatCharacterPosition スタイル パネルによってのみ使用され、関連付けられた System.Windows.Forms.RichTextBox コントロール (Control プロパティを介して関連付けられる) で変更の選択として表示される情報を決定します。

パネルのスタイル
AutoStatusText マウスの下のコントロールの StatusBarText エクステンダー プロパティの値を表示します。
Button イメージ/テキスト付きの標準状態ボタン要素
CharacterPosition 関連付けられたRichTextBoxコントロールの現在の行と文字の位置を表示します。
CursorPosition 関連付けられた Control 内のマウスの位置を表示します。
ControlContainer パネルのサイズと位置に基づいて関連付けられた Control のサイズおよび位置
日付 現在の日付
KeyState 指定されたキーの状態。 (例、[NumLock]など)
Marquee (マーキー) アニメーションテキストとイメージ (スクロール、スライドなど)
MDIList 各MDIChildフォームの状態ボタン。
Progress タスク完了度を示すプログレス バー
StateButton イメージ/テキスト付きの標準状態ボタン
テキスト イメージやテキストを表示します。
タイム 現在の時刻を表示します。
使用例
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinStatusBar
Imports Infragistics.Win.UltraWinProgressBar

Private Sub InitializeStatusBar()

    With Me.ultraStatusBar1

        ' Note: Under windows XP if the 'SupportThemes' property
        ' is left is True (its default setting) then some of
        ' the explicit appearance, border style and button
        ' style properties are ignored.
        .SupportThemes = False

        ' Set the border style for the status bar control
        .BorderStyle = UIElementBorderStyle.InsetSoft

        ' Set the default border style for panels
        .BorderStylePanel = UIElementBorderStyle.InsetSoft

        ' Set the style for button type panels
        .ButtonStyle = UIElementButtonStyle.PopupSoftBorderless

        ' Set the # of pixels between panels 
        .InterPanelSpacing = 3

        ' Specify the margins inside the status bar control.			
        .Padding = New UIElementMargins(2, 1, 1, 2)

        ' Set some apperance setting for the control
        .Appearance.BackGradientStyle = GradientStyle.VerticalBump
        .Appearance.BackColor = Color.Blue
        .Appearance.BackColor2 = Color.Aqua

        ' Set the default appearance for panels
        .PanelAppearance.BackColor = Color.Transparent

        ' Set some additional properties on the control
        .PanelsVisible = True
        .ResizeStyle = ResizeStyle.Immediate
        .ScaledImageSize = New Size(8, 8)
        .ScaleImages = ScaleImage.OnlyWhenNeeded
        .ShowToolTips = True
        .SizeGripVisible = DefaultableBoolean.True
        .UseMnemonic = True
        .WrapText = True

    End With

    ' Add some panels to the collection
    Dim panel As UltraStatusPanel

    ' Add a simple text panel 
    panel = Me.ultraStatusBar1.Panels.Add("P1", PanelStyle.Text)
    panel.Text = "some text"

    ' Add an auto status text style panel.

    ' Note: At design time a 'StatusBarText' extender property
    ' is added to each control and menu on the form. 
    ' At runtime, when the mouse is over the control the text 
    ' specified for this property will display in the AutoStatusText
    ' panel.
    ' Also a panel of this type will automatically show the
    ' tooltip for tools on an UltraToolbarsManager toolbar or menu.

    panel = Me.ultraStatusBar1.Panels.Add("P2", PanelStyle.AutoStatusText)
    panel.SizingMode = PanelSizingMode.Spring

    ' You can also set the 'StatusBarText' extender property in 
    ' code by calling the 'SetStatusBarText' method as illustrated below.
    Me.ultraStatusBar1.SetStatusBarText(Me.button1, "Btn 1 action desc...")
    Me.ultraStatusBar1.SetStatusBarText(Me.button2, "Btn 2 action desc...")

    ' Add a character position style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P3", PanelStyle.CharacterPosition)
    panel.Control = Me.richTextBox1
    panel.CharacterPositionFormat = "Ln: [Line], Char: [Char]"
    panel.SizingMode = PanelSizingMode.Fixed
    panel.BorderStyle = UIElementBorderStyle.None
    panel.Width = 100

    ' Add a cursor position style panel
    panel = Me.ultraStatusBar1.Panels.Add("P4", PanelStyle.CursorPosition)
    ' You must specify either the form or a control so that
    ' when the mouse is moved over that control the panel
    ' will be automatically updated.
    panel.Control = Me.richTextBox1
    panel.CursorPositionFormat = "x: [X], y: [Y]"
    panel.SizingMode = PanelSizingMode.Automatic

    ' Add a button style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P5", PanelStyle.Button)
    panel.Text = "&End"
    panel.Appearance.TextHAlign = HAlign.Center
    panel.ToolTipText = "Scrolls to the end of the document"
    panel.Enabled = True

    ' Add a state button style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P6", PanelStyle.StateButton)
    panel.Text = "&Hex"
    panel.Checked = True

    ' Add a control container style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P7", PanelStyle.ControlContainer)
    panel.SizingMode = PanelSizingMode.Adjustable
    panel.MinWidth = 50
    panel.Control = Me.textBox1
    panel.Padding = New Size(3, 6)

    ' Add a date style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P8", PanelStyle.Date)
    panel.DateTimeFormat = "MMM-dd-yyyy"

    ' Add a time style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P9", PanelStyle.Time)
    panel.DateTimeFormat = "hh:mm:ss tt"

    ' Add a key state style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P10", PanelStyle.KeyState)
    panel.KeyStateInfo.DisplayStyle = KeyStateDisplayStyle.ChangeText
    panel.KeyStateInfo.Key = KeyState.InsertMode
    panel.KeyStateInfo.OffText = "Ovr"
    panel.KeyStateInfo.OnText = "Insrt"

    ' Add a marquee style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P11", PanelStyle.Marquee)
    panel.Text = "marquee string"
    panel.MarqueeInfo.Delay = 50
    panel.MarqueeInfo.MarqueeStyle = MarqueeStyle.Bouncing
    panel.MarqueeInfo.MarqueeDirection = Direction.LeftToRight
    panel.MarqueeInfo.MarqueeScrollAmount = 2
    panel.MarqueeInfo.Start()

    ' Add a progress style panel 
    panel = Me.ultraStatusBar1.Panels.Add("P12", PanelStyle.Progress)

    With panel.ProgressBarInfo

        .Appearance.ForeColor = Color.Red
        .FillAppearance.BackColor = Color.Blue
        .FillAppearance.ForeColor = Color.Yellow
        .Minimum = 25
        .Maximum = 85
        .Value = 50
        .ShowLabel = True
        .Style = ProgressBarStyle.SegmentedPartial
        .PercentFormat = "P2"
        .Label = _
                "Done: " + _
                UltraProgressBar.LABEL_FORMATTED + _
                "Remaining: " + _
                UltraProgressBar.LABEL_FORMATTED_REMAINING
    End With

    ' There is also an 'MDIList' style tool for use
    ' on MDI parent forms.

End Sub
using System.Diagnostics;
using Infragistics.Win;
using Infragistics.Win.UltraWinStatusBar;
using Infragistics.Win.UltraWinProgressBar;

private void InitializeStatusBar()
{

	// Note: Under windows XP if the 'SupportThemes' property
	// is left is True (its default setting) then some of
	// the explicit appearance, border style and button
	// style properties are ignored.
	this.ultraStatusBar1.SupportThemes = false;
	
	// Set the border style for the status bar control
	this.ultraStatusBar1.BorderStyle = UIElementBorderStyle.InsetSoft;
	
	// Set the default border style for panels
	this.ultraStatusBar1.BorderStylePanel = UIElementBorderStyle.InsetSoft;
	
	// Set the style for button type panels
	this.ultraStatusBar1.ButtonStyle = UIElementButtonStyle.PopupSoftBorderless;
	
	// Set the # of pixels between panels 
	this.ultraStatusBar1.InterPanelSpacing = 3;
	
	// Specify the margins inside the status bar control.			
	this.ultraStatusBar1.Padding = new UIElementMargins(2, 1,1,2);

	// Set some apperance setting for the control
	this.ultraStatusBar1.Appearance.BackGradientStyle = GradientStyle.VerticalBump;
	this.ultraStatusBar1.Appearance.BackColor = Color.Blue;
	this.ultraStatusBar1.Appearance.BackColor2 = Color.Aqua;

	// Set the default appearance for panels
	this.ultraStatusBar1.PanelAppearance.BackColor = Color.Transparent;

	// Set some additional properties on the control
	this.ultraStatusBar1.PanelsVisible = true;
	this.ultraStatusBar1.ResizeStyle = ResizeStyle.Immediate;
	this.ultraStatusBar1.ScaledImageSize = new Size(8,8);
	this.ultraStatusBar1.ScaleImages = ScaleImage.OnlyWhenNeeded;
	this.ultraStatusBar1.ShowToolTips = true;
	this.ultraStatusBar1.SizeGripVisible = DefaultableBoolean.True;
	this.ultraStatusBar1.UseMnemonic = true;
	this.ultraStatusBar1.WrapText = true;

	// Add some panels to the collection
	UltraStatusPanel panel;

	// Add a simple text panel 
	panel = this.ultraStatusBar1.Panels.Add("P1", PanelStyle.Text );
	panel.Text = "some text";

	// Add an auto status text style panel.

	// Note: At design time a 'StatusBarText' extender property
	// is added to each control and menu on the form. 
	// At runtime, when the mouse is over the control the text 
	// specified for this property will display in the AutoStatusText
	// panel.
	// Also a panel of this type will automatically show the
	// tooltip for tools on an UltraToolbarsManager toolbar or menu.
	
	panel = this.ultraStatusBar1.Panels.Add("P2", PanelStyle.AutoStatusText );
	panel.SizingMode = PanelSizingMode.Spring;
	
	// You can also set the 'StatusBarText' extender property in 
	// code by calling the 'SetStatusBarText' method as illustrated below.
	this.ultraStatusBar1.SetStatusBarText( this.button1, "Btn 1 action desc...");
	this.ultraStatusBar1.SetStatusBarText( this.button2, "Btn 2 action desc...");

	// Add a character position style panel 
	panel = this.ultraStatusBar1.Panels.Add("P3", PanelStyle.CharacterPosition );
	panel.Control = this.richTextBox1;
	panel.CharacterPositionFormat =  "Ln: [Line], Char: [Char]";
	panel.SizingMode = PanelSizingMode.Fixed;
	panel.BorderStyle = UIElementBorderStyle.None;
	panel.Width = 100;

	// Add a cursor position style panel
	panel = this.ultraStatusBar1.Panels.Add("P4", PanelStyle.CursorPosition );
	// You must specify either the form or a control so that
	// when the mouse is moved over that control the panel
	// will be automatically updated.
	panel.Control = this.richTextBox1;	
	panel.CursorPositionFormat =  "x: [X], y: [Y]";
	panel.SizingMode = PanelSizingMode.Automatic;

	// Add a button style panel 
	panel = this.ultraStatusBar1.Panels.Add("P5", PanelStyle.Button );
	panel.Text = "&End";
	panel.Appearance.TextHAlign = HAlign.Center;
	panel.ToolTipText = "Scrolls to the end of the document";
	panel.Enabled = true;

	// Add a state button style panel 
	panel = this.ultraStatusBar1.Panels.Add("P6", PanelStyle.StateButton );
	panel.Text = "&Hex";
	panel.Checked = true;

	// Add a control container style panel 
	panel = this.ultraStatusBar1.Panels.Add("P7", PanelStyle.ControlContainer );
	panel.SizingMode = PanelSizingMode.Adjustable;
	panel.MinWidth = 50;
	panel.Control = this.textBox1;
	panel.Padding = new Size(3,6);

	// Add a date style panel 
	panel = this.ultraStatusBar1.Panels.Add("P8", PanelStyle.Date );
	panel.DateTimeFormat = "MMM-dd-yyyy";

	// Add a time style panel 
	panel = this.ultraStatusBar1.Panels.Add("P9", PanelStyle.Time );
	panel.DateTimeFormat = "hh:mm:ss tt";

	// Add a key state style panel 
	panel = this.ultraStatusBar1.Panels.Add("P10", PanelStyle.KeyState );
	panel.KeyStateInfo.DisplayStyle = KeyStateDisplayStyle.ChangeText;
	panel.KeyStateInfo.Key = KeyState.InsertMode;
	panel.KeyStateInfo.OffText = "Ovr";
	panel.KeyStateInfo.OnText = "Insrt";

	// Add a marquee style panel 
	panel = this.ultraStatusBar1.Panels.Add("P11", PanelStyle.Marquee );
	panel.Text = "some marquee string";
	panel.MarqueeInfo.Delay = 50;
	panel.MarqueeInfo.MarqueeStyle = MarqueeStyle.Bouncing;
	panel.MarqueeInfo.MarqueeDirection = Direction.LeftToRight;
	panel.MarqueeInfo.MarqueeScrollAmount = 2;
	panel.MarqueeInfo.Start();

	// Add a progress style panel 
	panel = this.ultraStatusBar1.Panels.Add("P12", PanelStyle.Progress );
	ProgressBarInfo pbi = panel.ProgressBarInfo;
	pbi.Appearance.ForeColor = Color.Red;
	pbi.FillAppearance.BackColor = Color.Blue;
	pbi.FillAppearance.ForeColor = Color.Yellow;
	pbi.Minimum = 0;
	pbi.Maximum = 100;
	pbi.ShowLabel = true;
	pbi.Style = ProgressBarStyle.SegmentedPartial;
	pbi.PercentFormat = "P2";

	// Note: There are 10 different substitution string
	// constants defined by UltraProgressBar that are
	// prefixed by "LABEL_". The actual values are then
	// substituted for these constants to format the
	// label that is displayed in the panel.
	
	pbi.Label = "Done: " +
				UltraProgressBar.LABEL_FORMATTED +
				"Remaining: " + 
				UltraProgressBar.LABEL_FORMATTED_REMAINING );
	
	pbi.Value = 50;

	// There is also an 'MDIList' style tool for use
	// on MDI parent forms.

}
参照