Label.PreferredWidth プロパティ

定義

コントロールの適切な幅を取得します。Gets the preferred width of the control.

public:
 virtual property int PreferredWidth { int get(); };
[System.ComponentModel.Browsable(false)]
public virtual int PreferredWidth { get; }
member this.PreferredWidth : int
Public Overridable ReadOnly Property PreferredWidth As Integer

プロパティ値

単一行のテキストが表示されることを想定したコントロールの幅 (ピクセル単位)。The width of the control (in pixels), assuming a single line of text is displayed.

属性

次のコード例では、3次元の境界線と、ImageListImageIndex プロパティを使用して表示されるイメージを持つ Label コントロールを作成する方法を示します。The following code example demonstrates how to create a Label control that has a three-dimensional border and an image displayed using the ImageList and ImageIndex properties. コントロールには、ニーモニック文字が指定されたキャプションもあります。The control also has a caption with a mnemonic character specified. このコード例では、PreferredHeight プロパティと PreferredWidth プロパティを使用して、表示されるフォーム上の Label コントロールのサイズを適切に調整します。The example code uses the PreferredHeight and PreferredWidth properties to properly size the Label control on the form on which it is displayed. この例では、ImageList が作成され、imageList1 という名前が付けられ、2つのイメージが読み込まれている必要があります。This example requires that an ImageList has been created and named imageList1 and that it has loaded two images. この例では、コードが System.Drawing 名前空間をコードに追加したフォーム内にあることも必要です。The example also requires that the code is within a form that has the System.Drawing namespace added to its code.

public:
   void CreateMyLabel()
   {
      // Create an instance of a Label.
      Label^ label1 = gcnew Label;
      
      // Set the border to a three-dimensional border.
      label1->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
      // Set the ImageList to use for displaying an image.
      label1->ImageList = imageList1;
      // Use the second image in imageList1.
      label1->ImageIndex = 1;
      // Align the image to the top left corner.
      label1->ImageAlign = ContentAlignment::TopLeft;
      
      // Specify that the text can display mnemonic characters.
      label1->UseMnemonic = true;
      // Set the text of the control and specify a mnemonic character.
      label1->Text = "First &Name:";
      
      /* Set the size of the control based on the PreferredHeight and PreferredWidth values. */
      label1->Size = System::Drawing::Size( label1->PreferredWidth, label1->PreferredHeight );
      
      //...Code to add the control to the form...
   }
public void CreateMyLabel()
{
   // Create an instance of a Label.
   Label label1 = new Label();

   // Set the border to a three-dimensional border.
   label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
   // Set the ImageList to use for displaying an image.
   label1.ImageList = imageList1;
   // Use the second image in imageList1.
   label1.ImageIndex = 1;
   // Align the image to the top left corner.
   label1.ImageAlign = ContentAlignment.TopLeft;

   // Specify that the text can display mnemonic characters.
   label1.UseMnemonic = true;
   // Set the text of the control and specify a mnemonic character.
   label1.Text = "First &Name:";
   
   /* Set the size of the control based on the PreferredHeight and PreferredWidth values. */
   label1.Size = new Size (label1.PreferredWidth, label1.PreferredHeight);

   //...Code to add the control to the form...
}

Public Sub CreateMyLabel()
    ' Create an instance of a Label.
    Dim label1 As New Label()
       
    ' Set the border to a three-dimensional border.
    label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D
    ' Set the ImageList to use for displaying an image.
    label1.ImageList = imageList1
    ' Use the second image in imageList1.
    label1.ImageIndex = 1
    ' Align the image to the top left corner.
    label1.ImageAlign = ContentAlignment.TopLeft
     
    ' Specify that the text can display mnemonic characters.
    label1.UseMnemonic = True
    ' Set the text of the control and specify a mnemonic character.
    label1.Text = "First &Name:"
       
    ' Set the size of the control based on the PreferredHeight and PreferredWidth values. 
    label1.Size = New Size(label1.PreferredWidth, label1.PreferredHeight)

    '...Code to add the control to the form...
End Sub

注釈

このプロパティは、テキスト文字列の長さを返しますが、行の折り返しは考慮されません。This property returns the length of the text string, but does not take line wrapping into consideration. たとえば、300ピクセル幅を測定するテキスト文字列は、100ピクセル幅のみの Label に3行として表示されることがあります。For example, a text string that measures 300 pixels wide could be displayed as three lines in a Label that is only 100 pixels wide. PreferredWidth プロパティは引き続き300ピクセルを返します。The PreferredWidth property still returns 300 pixels. このプロパティを PreferredHeight プロパティと共に使用して、Label コントロール内のテキストが正しく表示されるようにすることができます。You can use this property, along with the PreferredHeight property, to ensure that the text in the Label control is displayed properly. AutoSize プロパティを使用すると、テキストとフォントサイズに基づいて、Label コントロールの高さと幅を自動的に調整できます。You can use the AutoSize property to automatically adjust the height and the width of the Label control based on the text and font size.

注意

Label コントロールの BorderStyle プロパティが BorderStyle.Noneに設定されている場合、境界がないため PreferredWidth プロパティによって返される値は大きくなります。If the BorderStyle property of the Label control is set to BorderStyle.None, the value returned by PreferredWidth property will be larger due to the lack of borders.

適用対象

こちらもご覧ください