StatusBarPanel.AutoSize StatusBarPanel.AutoSize StatusBarPanel.AutoSize StatusBarPanel.AutoSize Property

定义

获取或设置一个值,该值指示是否自动调整状态栏面板的大小。Gets or sets a value indicating whether the status bar panel is automatically resized.

public:
 property System::Windows::Forms::StatusBarPanelAutoSize AutoSize { System::Windows::Forms::StatusBarPanelAutoSize get(); void set(System::Windows::Forms::StatusBarPanelAutoSize value); };
public System.Windows.Forms.StatusBarPanelAutoSize AutoSize { get; set; }
member this.AutoSize : System.Windows.Forms.StatusBarPanelAutoSize with get, set
Public Property AutoSize As StatusBarPanelAutoSize

属性值

异常

分配给属性的值不是 StatusBarPanelAutoSize 枚举的成员。The value assigned to the property is not a member of the StatusBarPanelAutoSize enumeration.

示例

下面的代码示例将创建StatusBar控件在窗体上,添加两个StatusBarPanel对象。The following code example creates a StatusBar control on a form and adds two StatusBarPanel objects. 第一个StatusBarPanel名为panel1,显示应用程序的状态文本。The first StatusBarPanel, named panel1, displays status text for an application. 第二个StatusBarPanel名为panel2,显示当前日期,并使用ToolTipText属性的StatusBarPanel类,以显示当前时间。The second StatusBarPanel, named panel2, displays the current date and uses the ToolTipText property of the StatusBarPanel class to display the current time. 该示例使用ShowPanels属性以确保显示多个面板而不是标准的面板中,并使用Panels属性来访问Add方法StatusBar.StatusBarPanelCollection若要添加到面板StatusBarThe example uses the ShowPanels property to ensure that the panels are displayed instead of a standard panel, and it uses the Panels property to access the Add method of the StatusBar.StatusBarPanelCollection to add the panels to the StatusBar. 此示例还使用AutoSizeBorderStyleToolTipText,和Text属性来初始化StatusBarPanel对象。The example also uses the AutoSize, BorderStyle, ToolTipText, and Text properties to initialize the StatusBarPanel objects. 此示例假定在示例中定义的方法是定义和调用的构造函数从FormThis example assumes that the method defined in the example is defined and called from the constructor of a Form.

private:
   void CreateMyStatusBar()
   {
      // Create a StatusBar control.
      StatusBar^ statusBar1 = gcnew StatusBar;

      // Create two StatusBarPanel objects to display in the StatusBar.
      StatusBarPanel^ panel1 = gcnew StatusBarPanel;
      StatusBarPanel^ panel2 = gcnew StatusBarPanel;

      // Display the first panel with a sunken border style.
      panel1->BorderStyle = StatusBarPanelBorderStyle::Sunken;

      // Initialize the text of the panel.
      panel1->Text = "Ready...";

      // Set the AutoSize property to use all remaining space on the StatusBar.
      panel1->AutoSize = StatusBarPanelAutoSize::Spring;

      // Display the second panel with a raised border style.
      panel2->BorderStyle = StatusBarPanelBorderStyle::Raised;

      // Create ToolTip text that displays the time the application
      // was started.
      panel2->ToolTipText = System::DateTime::Now.ToShortTimeString();

      // Set the text of the panel to the current date.
      panel2->Text = "Started: " + System::DateTime::Today.ToLongDateString();

      // Set the AutoSize property to size the panel to the size of the contents.
      panel2->AutoSize = StatusBarPanelAutoSize::Contents;

      // Display panels in the StatusBar control.
      statusBar1->ShowPanels = true;

      // Add both panels to the StatusBarPanelCollection of the StatusBar.   
      statusBar1->Panels->Add( panel1 );
      statusBar1->Panels->Add( panel2 );

      // Add the StatusBar to the form.
      this->Controls->Add( statusBar1 );
   }
private void CreateMyStatusBar()
{
	// Create a StatusBar control.
	StatusBar statusBar1 = new StatusBar();
	// Create two StatusBarPanel objects to display in the StatusBar.
	StatusBarPanel panel1 = new StatusBarPanel();
	StatusBarPanel panel2 = new StatusBarPanel();

	// Display the first panel with a sunken border style.
	panel1.BorderStyle = StatusBarPanelBorderStyle.Sunken;
	// Initialize the text of the panel.
	panel1.Text = "Ready...";
	// Set the AutoSize property to use all remaining space on the StatusBar.
	panel1.AutoSize = StatusBarPanelAutoSize.Spring;
	
	// Display the second panel with a raised border style.
	panel2.BorderStyle = StatusBarPanelBorderStyle.Raised;
	
	// Create ToolTip text that displays time the application was started.
	panel2.ToolTipText = "Started: " + System.DateTime.Now.ToShortTimeString();
	// Set the text of the panel to the current date.
	panel2.Text = System.DateTime.Today.ToLongDateString();
	// Set the AutoSize property to size the panel to the size of the contents.
	panel2.AutoSize = StatusBarPanelAutoSize.Contents;
				
	// Display panels in the StatusBar control.
	statusBar1.ShowPanels = true;

	// Add both panels to the StatusBarPanelCollection of the StatusBar.			
	statusBar1.Panels.Add(panel1);
	statusBar1.Panels.Add(panel2);

	// Add the StatusBar to the form.
	this.Controls.Add(statusBar1);
}
Private Sub CreateMyStatusBar()
   ' Create a StatusBar control.
   Dim statusBar1 As New StatusBar()

   ' Create two StatusBarPanel objects to display in the StatusBar.
   Dim panel1 As New StatusBarPanel()
   Dim panel2 As New StatusBarPanel()

   ' Display the first panel with a sunken border style.
   panel1.BorderStyle = StatusBarPanelBorderStyle.Sunken

   ' Initialize the text of the panel.
   panel1.Text = "Ready..."

   ' Set the AutoSize property to use all remaining space on the StatusBar.
   panel1.AutoSize = StatusBarPanelAutoSize.Spring
   
   ' Display the second panel with a raised border style.
   panel2.BorderStyle = StatusBarPanelBorderStyle.Raised
   
   ' Create ToolTip text that displays the time the application was started.
   panel2.ToolTipText = "Started: " & System.DateTime.Now.ToShortTimeString()

   ' Set the text of the panel to the current date.
   panel2.Text = System.DateTime.Today.ToLongDateString()

   ' Set the AutoSize property to size the panel to the size of the contents.
   panel2.AutoSize = StatusBarPanelAutoSize.Contents

   ' Display panels in the StatusBar control.
   statusBar1.ShowPanels = True

   ' Add both panels to the StatusBarPanelCollection of the StatusBar.			
   statusBar1.Panels.Add(panel1)
   statusBar1.Panels.Add(panel2)

   ' Add the StatusBar to the form.
   Me.Controls.Add(statusBar1)
End Sub

注解

StatusBarPanel 对象设置为Contents优先级高于设置为这些面板Spring值。StatusBarPanel objects set to Contents have precedence over those panels set to the Spring value. 例如,StatusBarPanel具有其AutoSize属性设置为Spring如果缩短StatusBarPanelAutoSize属性设置为Contents需要该空间。For example, a StatusBarPanel that has its AutoSize property set to Spring is shortened if a StatusBarPanel with the AutoSize property set to Contents requires that space.

可以使用AutoSize以确保的内容StatusBarPanel正确地显示在StatusBar包含多个面板的控件。You can use AutoSize to ensure that the contents of a StatusBarPanel are properly displayed in a StatusBar control that contains more than one panel. 例如,您可能希望包含文本自动调整,它显示的文本量的面板 (Contents),而另一个面板StatusBar显示一个所有者绘制进度栏将需要是固定的大小 (None).For example, you might want a panel that contains text to adjust automatically to the amount of text it is displaying (Contents), while another panel on the StatusBar that displays an owner-drawn progress bar would need to be a fixed size (None).

适用于

另请参阅