Share via


Control.SizeChanged 事件

Size 属性值更改时发生。

**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)

语法

声明
Public Event SizeChanged As EventHandler
用法
Dim instance As Control
Dim handler As EventHandler

AddHandler instance.SizeChanged, handler
public event EventHandler SizeChanged
public:
event EventHandler^ SizeChanged {
    void add (EventHandler^ value);
    void remove (EventHandler^ value);
}
/** @event */
public void add_SizeChanged (EventHandler value)

/** @event */
public void remove_SizeChanged (EventHandler value)
JScript 支持使用事件,但不支持进行新的声明。

备注

首选使用 Layout 事件处理自定义布局。响应 Resize 事件时会引发 Layout 事件,但在其他可能需要应用布局的情况下也会引发此事件。

如果通过编程修改或用户交互更改 Size 属性,则将引发此事件。

有关处理事件的更多信息,请参见 使用事件

示例

下面的代码示例演示 SizeChanged 事件。该示例中提供了 Button 控件的一个实例,此实例既可以水平缩放,也可以垂直缩放。NumericUpDown 实例提供了水平比例因子和垂直比例值。名为“OK”的 Button 实例用于设置 Button 控件实例的比例值。只要控件大小更改,就会调用与控件的 SizeChanged 事件关联的事件处理程序。该事件处理程序显示一个消息框,指示控件的大小已更改。

Private Sub RegisterEventHandler()
   AddHandler myButton1.SizeChanged, AddressOf MyButton1_SizeChanged
End Sub 'RegisterEventHandler

Private Sub MyButton2_Click(sender As Object, e As EventArgs) 
   ' Set the scale for the control to the value provided.
   Dim scale As Single = CSng(myNumericUpDown1.Value)
   myButton1.Scale(scale)
End Sub 'MyButton2_Click

Private Sub MyButton1_SizeChanged(sender As Object, e As EventArgs)
   MessageBox.Show("The size of the 'Button' control has changed")
End Sub 'MyButton1_SizeChanged
private void RegisterEventHandler()
{
   myButton1.SizeChanged += new EventHandler(this.MyButton1_SizeChanged);
}

private void MyButton2_Click(object sender, System.EventArgs e)
{
   // Set the scale for the control to the value provided.
   float scale = (float)myNumericUpDown1.Value;
   myButton1.Scale(scale);
}

private void MyButton1_SizeChanged(object sender, System.EventArgs e)
{
   MessageBox.Show("The size of the 'Button' control has changed");
}
private:
   void RegisterEventHandler()
   {
      myButton1->SizeChanged += gcnew EventHandler( this, &MyForm::MyButton1_SizeChanged );
   }

   void MyButton2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Set the scale for the control to the value provided.
      float scale = (float)myNumericUpDown1->Value;
      myButton1->Scale( scale );
   }

   void MyButton1_SizeChanged( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      MessageBox::Show( "The size of the 'Button' control has changed" );
   }
private void RegisterEventHandler()
{
    myButton1.add_SizeChanged(new EventHandler(this.myButton1_SizeChanged));
} //RegisterEventHandler

private void myButton2_Click(Object sender, System.EventArgs e)
{
    // Set the scale for the control to the value provided.
    float scale = (float)System.Convert.ToDouble(myNumericUpDown1.
        get_Value());
    myButton1.Scale(scale);
} //myButton2_Click

private void myButton1_SizeChanged(Object sender, System.EventArgs e)
{
    MessageBox.Show("The size of the 'Button' control has changed");
} //myButton1_SizeChanged

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

Control 类
Control 成员
System.Windows.Forms 命名空间
OnSizeChanged
Control.Size 属性
Control.Resize 事件