Control.Resize 事件

在调整控件大小时发生。

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

语法

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

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

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

备注

要确定已调整大小的控件的 Size,可以将 EventArgs 数据的 sender 参数强制转换为 Control 并获取其 Size 属性(或分别获取 HeightWidth 属性)。

要处理自定义布局,请用 Layout 事件代替 Resize 事件。响应 Resize 事件时,会引发 Layout 事件,同时在响应其他影响控件布局的变化时也会引发此事件。

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

示例

下面的代码示例处理 FormResize 事件。在调整窗体大小时,事件处理程序将确保窗体仍为正方形(其 HeightWidth 仍保持相等)。

Private Sub Form1_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize

   Dim myControl As Control
   myControl = sender

   ' Ensure the Form remains square (Height = Width).
   If myControl.Size.Height <> myControl.Size.Width Then
      myControl.Size = New Size(myControl.Size.Width, myControl.Size.Width)
   End If
End Sub
private void Form1_Resize(object sender, System.EventArgs e)
{
   Control control = (Control)sender;
        
   // Ensure the Form remains square (Height = Width).
   if(control.Size.Height != control.Size.Width)
   {
      control.Size = new Size(control.Size.Width, control.Size.Width);
   }
}
private:
   void Form1_Resize( Object^ sender, System::EventArgs^ /*e*/ )
   {
      Control^ control = dynamic_cast<Control^>(sender);

      // Ensure the Form remains square (Height = Width).
      if ( control->Size.Height != control->Size.Width )
      {
         control->Size = System::Drawing::Size( control->Size.Width, control->Size.Width );
      }
   }
private void Form1_Resize(Object sender, System.EventArgs e)
{
    Control control = (Control)sender;
    // Ensure the Form remains square (Height = Width).
    if (control.get_Size().get_Height() != control.get_Size().
        get_Width()) {
        control.set_Size(new Size(control.get_Size().get_Width(),
            control.get_Size().get_Width()));
    }
} //Form1_Resize

平台

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

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

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