Condividi tramite


ScrollableControl.AutoScrollMargin Proprietà

Definizione

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à

Size

Oggetto Size che rappresenta l'altezza e la larghezza, espresse in pixel, dei margini di scorrimento automatico.

Eccezioni

Il valore assegnato della proprietà Height o della proprietà Width è minore di zero.

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.

Si applica a

Vedi anche