次の方法で共有


ListBox.IntegralHeight プロパティ

定義

一部の項目しか表示されない状況を避けるために、コントロールのサイズを変更するかどうかを示す値を取得または設定します。

public:
 property bool IntegralHeight { bool get(); void set(bool value); };
public bool IntegralHeight { get; set; }
member this.IntegralHeight : bool with get, set
Public Property IntegralHeight As Boolean

プロパティ値

一部の項目しか表示されない状況を避けるためにコントロールのサイズを変更する場合は true。それ以外の場合は false。 既定値は、true です。

次のコード例では、 プロパティと HorizontalExtent プロパティを使用HorizontalScrollbarして、コントロール内のすべての項目テキストを表示する水平スクロール バーを表示する方法をListBox示します。 また、この例では、 プロパティを IntegralHeight 使用して、コントロールのサイズが原因で項目が部分的に表示されないようにします ListBox 。 この例では、 という名前listBox1ListBoxコントロールがフォームに追加されている必要があります。

private:
   void DisplayHScroll()
   {
      // Make sure no items are displayed partially.
      listBox1->IntegralHeight = true;

      // Add items that are wide to the ListBox.
      for ( int x = 0; x < 10; x++ )
      {
         listBox1->Items->Add( String::Format( "Item {0} is a very large value that requires scroll bars", x ) );

      }

      // Display a horizontal scroll bar.
      listBox1->HorizontalScrollbar = true;

      // Create a Graphics object to use when determining the size of the largest item in the ListBox.
      Graphics^ g = listBox1->CreateGraphics();

      // Determine the size for HorizontalExtent using the MeasureString method using the last item in the list.
      int hzSize = (int)g->MeasureString( dynamic_cast<String^>(listBox1->Items[ listBox1->Items->Count - 1 ]), listBox1->Font ).Width;

      // Set the HorizontalExtent property.
      listBox1->HorizontalExtent = hzSize;
   }
private void DisplayHScroll()
{
   // Make sure no items are displayed partially.
   listBox1.IntegralHeight = true;

   // Add items that are wide to the ListBox.
   for (int x = 0; x < 10; x++)
   {
      listBox1.Items.Add("Item  " + x.ToString() + " is a very large value that requires scroll bars");
   }

   // Display a horizontal scroll bar.
   listBox1.HorizontalScrollbar = true;

   // Create a Graphics object to use when determining the size of the largest item in the ListBox.
   Graphics g = listBox1.CreateGraphics();

   // Determine the size for HorizontalExtent using the MeasureString method using the last item in the list.
   int hzSize = (int) g.MeasureString(listBox1.Items[listBox1.Items.Count -1].ToString(),listBox1.Font).Width;
   // Set the HorizontalExtent property.
   listBox1.HorizontalExtent = hzSize;
}
Private Sub DisplayHScroll()
     ' Make sure no items are displayed partially.
   listBox1.IntegralHeight = True
   Dim x As Integer

   ' Add items that are wide to the ListBox.
   For x = 0 To 10
      listBox1.Items.Add("Item  " + x.ToString() + " is a very large value that requires scroll bars")
   Next x

   ' Display a horizontal scroll bar.
   listBox1.HorizontalScrollbar = True

   ' Create a Graphics object to use when determining the size of the largest item in the ListBox.
   Dim g As System.Drawing.Graphics = listBox1.CreateGraphics()


   ' Determine the size for HorizontalExtent using the MeasureString method using the last item in the list.
   Dim hzSize As Integer = g.MeasureString(listBox1.Items(listBox1.Items.Count - 1).ToString(), listBox1.Font).Width
   ' Set the HorizontalExtent property.
   listBox1.HorizontalExtent = hzSize
End Sub

注釈

このプロパティを に true設定すると、項目が部分的に表示されないように、コントロールのサイズが自動的に変更されます。 フォームのスペース要件に基づいて の元の ListBox サイズを維持する場合は、このプロパティを に false設定します。

既定では、 と のListBoxCheckedListBoxサイズは、項目全体のみを表示します。 または CheckedListBoxListBoxドッキング領域に完全に塗りつぶす場合は、 を に設定IntegralHeightしますfalse。 これにより、コントロールは領域を完全に塗りつぶしますが、最後の項目は完全には表示されません。

ListBox 項目が含まれていない場合、このプロパティは無効です。

注意

整数の高さは、クライアント領域の高さではなく、 ListBoxの高さに基づいています。 その結果、 プロパティが IntegralHeight 設定 trueされている場合でも、スクロール バーが表示されている場合でも項目を部分的に表示できます。

注意

プロパティが DrawModeDrawMode.OwnerDrawVariable設定されている場合、このプロパティは無効です。

適用対象

こちらもご覧ください