ListBox.IntegralHeight Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta un valore che indica se il controllo deve essere ridimensionato per evitare di visualizzare elementi parziali.
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
Valore della proprietà
true
se il controllo viene ridimensionato per evitare di visualizzare parzialmente gli elementi; in caso contrario, false
. Il valore predefinito è true
.
Esempio
Nell'esempio di codice seguente viene illustrato come usare 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 usata 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 listBox1
, sia 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
Quando questa proprietà è impostata su true
, il controllo ridimensiona automaticamente per assicurarsi che un elemento non venga visualizzato parzialmente. Se si vuole mantenere le dimensioni originali della ListBox maschera in base ai requisiti di spazio del modulo, impostare questa proprietà su false
.
Per impostazione predefinita, le ListBox dimensioni e CheckedListBox sono in modo che visualizzino solo elementi interi. Se si vuole che l'oggetto o CheckedListBox riempia completamente un'area ListBox ancorata, impostare IntegralHeight su false
. In questo modo il controllo riempie completamente l'area, ma l'ultimo elemento non viene visualizzato completamente.
Se l'oggetto ListBox non contiene elementi, questa proprietà non ha alcun effetto.
Nota
L'altezza integrale è basata sull'altezza di , anziché sull'altezza dell'area ListBoxclient. Di conseguenza, quando la IntegralHeight proprietà è impostata true
, gli elementi possono comunque essere visualizzati parzialmente se vengono visualizzate le barre di scorrimento.
Nota
Se la proprietà è impostata su DrawMode.OwnerDrawVariable
, questa DrawMode proprietà non ha alcun effetto.