ListBox.HorizontalExtent Proprietà

Definizione

Ottiene o imposta la larghezza della barra di scorrimento orizzontale di un controllo 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

Valore della proprietà

Int32

Larghezza, in pixel, in base a cui la barra di scorrimento orizzontale del controllo può scorrere. Il valore predefinito è zero.

Esempio

Nell'esempio di codice seguente viene illustrato come utilizzare le HorizontalScrollbar proprietà e HorizontalExtent per visualizzare una barra di scorrimento orizzontale che mostra tutto il testo dell'elemento nel ListBox controllo . Nell'esempio viene utilizzata anche la IntegralHeight proprietà per assicurarsi che gli elementi non vengano visualizzati parzialmente a causa delle dimensioni del ListBox controllo. In questo esempio è necessario che un ListBox controllo denominato listBox1sia stato aggiunto a un modulo.

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

Commenti

Questa proprietà segnala un valore utile solo se la HorizontalScrollbar proprietà è impostata su true. Se la larghezza di ListBox è inferiore al valore di questa proprietà, la barra di scorrimento orizzontale scorre orizzontalmente gli elementi in ListBox. Se la larghezza di ListBox è uguale o maggiore di questo valore, la barra di scorrimento orizzontale viene nascosta. Il valore di questa proprietà non viene aggiornato dinamicamente da ListBox. Questa proprietà è utile quando gli elementi dell'oggetto ListBox sono disegnati dal proprietario. Ad esempio, se gli elementi disegnati dal proprietario di ListBox sono di 200 pixel di larghezza, ma la ListBox larghezza è di 60 pixel, la HorizontalExtent proprietà deve essere impostata su 200 per scorrere il bordo destro degli elementi nell'area visibile del controllo.

Si applica a

Vedi anche