Control.Resize イベント
コントロールのサイズが変更されると発生します。
Public Event Resize As EventHandler
[C#]
public event EventHandler Resize;
[C++]
public: __event EventHandler* Resize;
[JScript] JScript では、このクラスで定義されているイベントを処理できます。ただし、独自に定義することはできません。
イベント データ
イベント ハンドラが EventArgs 型の引数を受け取りました。
解説
サイズ変更されたコントロールの Size を決定するには、 EventArgs データの sender パラメータを Control オブジェクトにキャストしてその Size プロパティを取得するか、 Height プロパティまたは Width プロパティを個別に取得します。
カスタム レイアウトを処理するには、Resize イベントではなく Layout イベントを使用します。 Layout イベントは、 Resize イベントへの応答として発生しますが、コントロールのレイアウトに影響する他の変更への応答としても発生します。
イベント処理の詳細については、「 イベントの利用 」を参照してください。
使用例
[Visual Basic, C#, C++] Form の Resize イベントを処理する例を次に示します。フォームのサイズが変更されるとき、そのフォームはイベント ハンドラによって正方形に保たれます。つまり Height と Width が等しい値のままになります。
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
[C#]
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);
}
}
[C++]
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);
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
Control クラス | Control メンバ | System.Windows.Forms 名前空間 | OnResize | Size | Layout