ListBox.HorizontalExtent Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el ancho por el que puede desplazarse la barra de desplazamiento horizontal de un control 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
Valor de propiedad
Ancho, en píxeles, por el cual puede desplazarse la barra de desplazamiento horizontal del control. El valor predeterminado es cero.
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar las HorizontalScrollbar propiedades y HorizontalExtent para mostrar una barra de desplazamiento horizontal que muestra todo el texto del elemento en el ListBox control. En el ejemplo también se usa la IntegralHeight propiedad para asegurarse de que los elementos no se muestran parcialmente debido al tamaño del ListBox control. En este ejemplo se requiere que se haya agregado un ListBox control denominado listBox1
a un formulario.
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
Comentarios
Esta propiedad solo notifica un valor útil si la HorizontalScrollbar propiedad está establecida true
en . Si el ancho de ListBox es menor que el valor de esta propiedad, la barra de desplazamiento horizontal desplaza horizontalmente los elementos de .ListBox Si el ancho de ListBox es igual o mayor que este valor, se oculta la barra de desplazamiento horizontal. El valor de esta propiedad no se actualiza dinámicamente mediante .ListBox Esta propiedad es útil cuando se dibujan los elementos de ListBox . Por ejemplo, si el propietario dibuja los elementos de tiene un ancho de ListBox 200 píxeles, pero el ListBox ancho es de 60 píxeles, la HorizontalExtent propiedad tendría que establecerse en 200 para desplazarse por el borde derecho de los elementos en la región visible del control.