ListBox.HorizontalExtent Свойство

Определение

Получает или задает ширину прокрутки для горизонтальной полосы прокрутки в составе ListBox.

public:
 property int HorizontalExtent { int get(); void set(int value); };
public int HorizontalExtent { get; set; }
member this.HorizontalExtent : int with get, set
Public Property HorizontalExtent As Integer

Значение свойства

Ширина прокрутки для горизонтальной полосы прокрутки в составе элемента управления (в пикселях). По умолчанию используется значение ноль.

Примеры

В следующем примере кода показано, как использовать HorizontalScrollbar свойства и HorizontalExtent для отображения горизонтальной полосы прокрутки, отображающей весь текст элемента в элементе ListBox управления . В примере также используется IntegralHeight свойство , чтобы гарантировать, что элементы не отображаются частично из-за размера ListBox элемента управления . В этом примере требуется, чтобы ListBox в форму был добавлен элемент управления с именем listBox1.

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

Комментарии

Это свойство сообщает полезное значение только в том случае, HorizontalScrollbar если для свойства задано значение true. Если ширина ListBox объекта меньше значения этого свойства, горизонтальная полоса прокрутки горизонтально прокручивает элементы в ListBox. Если ширина ListBox объекта равна или больше этого значения, горизонтальная полоса прокрутки скрыта. Значение этого свойства не обновляется ListBoxдинамически . Это свойство полезно, если элементы объекта рисуются ListBox владельцем. Например, если владелец рисовал элементы элемента управления ListBox шириной 200 пикселей, но ListBox имеет ширину 60 пикселей, HorizontalExtent для свойства необходимо задать значение 200, чтобы прокрутить правый край элементов в видимую область элемента управления.

Применяется к

См. также раздел