次の方法で共有


Control.SetBoundsCore メソッド

このコントロールの指定した境界を設定する作業を実行します。

Protected Overridable Sub SetBoundsCore( _
   ByVal x As Integer, _   ByVal y As Integer, _   ByVal width As Integer, _   ByVal height As Integer, _   ByVal specified As BoundsSpecified _)
[C#]
protected virtual void SetBoundsCore(intx,inty,intwidth,intheight,BoundsSpecifiedspecified);
[C++]
protected: virtual void SetBoundsCore(intx,inty,intwidth,intheight,BoundsSpecifiedspecified);
[JScript]
protected function SetBoundsCore(
   x : int,y : int,width : int,height : int,specified : BoundsSpecified);

パラメータ

  • x
    コントロールの新しい Left プロパティ値。
  • y
    コントロールの新しい Top プロパティ値。
  • width
    コントロールの新しい Width プロパティ値。
  • height
    コントロールの新しい Height プロパティ値。
  • specified
    BoundsSpecified 値のビットごとの組み合わせ。

解説

通常、 specified パラメータに含まれない境界に対応するパラメータは、現在の値で渡されます。たとえば、 Location プロパティの Height または Width 、あるいは X または Y の各プロパティは、コントロールの現在のインスタンスに参照渡しできます。ただし、渡されたすべての値は有効で、コントロールに適用されます。

boundsSpecified パラメータは、アプリケーションによって変更された Bounds コントロールの要素を表します。たとえば、コントロールの Size を変更した場合、 boundsSpecified パラメータ値は BoundsSpecified.Size になります。ただし、設定されている Dock プロパティに応じて Size が調整される場合、 boundsSpecified パラメータ値は BoundsSpecified.None になります。

継承時の注意: 派生クラスで SetBoundsCore をオーバーライドする場合は、基本クラスの SetBoundsCore メソッドを呼び出して、強制的にコントロールの境界を変更してください。派生クラスでは、 SetBoundsCore メソッドにサイズの制限を追加できます。

使用例

[Visual Basic, C#, C++] SetBoundsCore メソッドをオーバーライドして、コントロールを固定サイズのままにする例を次に示します。この例は、 Control クラスから直接的または間接的に派生したクラスがあることを前提にしています。

 
Protected Overrides Sub SetBoundsCore(x As Integer, _
  y As Integer, width As Integer, _
  height As Integer, specified As BoundsSpecified)
   ' Set a fixed height and width for the control.
   MyBase.SetBoundsCore(x, y, 150, 75, specified)
End Sub

[C#] 
protected override void SetBoundsCore(int x, int y, 
   int width, int height, BoundsSpecified specified)
{
   // Set a fixed height and width for the control.
   base.SetBoundsCore(x, y, 150, 75, specified);
}

[C++] 
protected:
   void SetBoundsCore(int x, int y,
      int width, int height, BoundsSpecified specified) {
         // Set a fixed height and width for the control.
         UserControl::SetBoundsCore(x, y, 150, 75, specified);
      }

[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 名前空間 | SetBounds | Bounds | Layout