ScrollableControl.AutoScrollMargin 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 la dimensione del margine di scorrimento automatico.
public:
property System::Drawing::Size AutoScrollMargin { System::Drawing::Size get(); void set(System::Drawing::Size value); };
public System.Drawing.Size AutoScrollMargin { get; set; }
member this.AutoScrollMargin : System.Drawing.Size with get, set
Public Property AutoScrollMargin As Size
Valore della proprietà
Oggetto Size che rappresenta l'altezza e la larghezza, espresse in pixel, dei margini di scorrimento automatico.
Eccezioni
Esempio
Nell'esempio di codice seguente viene usata la classe derivata , Panel. Nell'esempio viene valutata la posizione di una casella di testo e viene modificato l'aspetto e il comportamento del contenitore padre, ovvero il controllo pannello. L'esempio richiede che sia stata creata un'istanza di un Panel controllo , TextBoxe Button. Posizionare la casella di testo nel pannello in modo che si sovrapponga ad almeno uno dei bordi del pannello. Chiamare questa funzione sul clic di un pulsante per visualizzare la differenza nel comportamento e nell'aspetto del pannello.
void SetAutoScrollMargins()
{
/* If the text box is outside the panel's bounds,
turn on auto-scrolling and set the margin. */
if ( text1->Location.X > panel1->Location.X || text1->Location.Y > panel1->Location.Y )
{
panel1->AutoScroll = true;
/* If the AutoScrollMargin is set to less
than (5,5), set it to 5,5. */
if ( panel1->AutoScrollMargin.Width < 5 || panel1->AutoScrollMargin.Height < 5 )
{
panel1->SetAutoScrollMargin( 5, 5 );
}
}
}
private void SetAutoScrollMargins()
{
/* If the text box is outside the panel's bounds,
turn on auto-scrolling and set the margin. */
if (text1.Location.X > panel1.Location.X ||
text1.Location.Y > panel1.Location.Y)
{
panel1.AutoScroll = true;
/* If the AutoScrollMargin is set to less
than (5,5), set it to 5,5. */
if( panel1.AutoScrollMargin.Width < 5 ||
panel1.AutoScrollMargin.Height < 5)
{
panel1.SetAutoScrollMargin(5, 5);
}
}
}
Private Sub SetAutoScrollMargins()
' If the text box is outside the panel's bounds,
' turn on auto-scrolling and set the margin.
If (text1.Location.X > panel1.Location.X) Or _
(text1.Location.Y > panel1.Location.Y) Then
panel1.AutoScroll = True
' If the AutoScrollMargin is set to less
' than (5,5), set it to 5,5.
If (panel1.AutoScrollMargin.Width < 5) Or _
(panel1.AutoScrollMargin.Height < 5) Then
panel1.SetAutoScrollMargin(5, 5)
End If
End If
End Sub
Commenti
Il margine di scorrimento automatico è la distanza tra tutti i controlli figlio e i bordi del controllo padre scorrevole. Le AutoScrollMargin dimensioni vengono aggiunte alle dimensioni di tutti i controlli figlio contenuti nel controllo scorrevole per determinare se sono necessarie o meno barre di scorrimento. La AutoScrollMargin proprietà viene valutata quando il controllo scorrevole padre viene ridimensionato o i singoli controlli figlio vengono visualizzati e viene utilizzato per determinare se è necessario visualizzare le barre di scorrimento. I controlli ancorati vengono esclusi dai calcoli che determinano se devono essere visualizzate le barre di scorrimento.
Nota
Se la proprietà di Dock un controllo ancorato è impostata su DockStyle.Fill, il controllo riempie il controllo scorrevole padre e il controllo ancorato viene ignorato quando si utilizza per AutoScrollMargin determinare se sono necessarie barre di scorrimento.
Se la distanza tra il bordo di un controllo figlio e il controllo padre scorrevole è minore del valore assegnato alla AutoScrollMargin proprietà e la AutoScroll proprietà è impostata su true
, viene visualizzata la barra di scorrimento appropriata.
Nota
Quando si ancorano controlli all'interno di un controllo scorrevole, è consigliabile aggiungere un controllo scorrevole figlio, ad esempio , Panelper contenere tutti gli altri controlli che potrebbero richiedere lo scorrimento. È necessario aggiungere il controllo figlio Panel al controllo scorrevole e la relativa Dock proprietà impostata su DockStyle.Fill e la relativa AutoScroll proprietà impostata su true
. È necessario impostare la AutoScroll proprietà del controllo padre scorrevole su false
.