ScrollableControl.AutoScrollMargin Właściwość

Definicja

Pobiera lub ustawia rozmiar marginesu automatycznego przewijania.

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

Wartość właściwości

Element Size reprezentujący wysokość i szerokość marginesu automatycznego przewijania w pikselach.

Wyjątki

Przypisana Height wartość lub Width jest mniejsza niż 0.

Przykłady

W poniższym przykładzie kodu użyto klasy pochodnej . Panel Przykład oblicza lokalizację pola tekstowego i zmienia wygląd i zachowanie kontenera nadrzędnego, kontrolkę panelu. Przykład wymaga utworzenia wystąpienia kontrolki Panel , TextBoxi Button. Umieść pole tekstowe na panelu, aby nakładało się co najmniej jedno z krawędzi panelu. Wywołaj tę funkcję na kliknięciu przycisku, aby zobaczyć różnicę w zachowaniu i wyglądzie panelu.

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

Uwagi

Margines automatycznego przewijania to odległość między wszystkimi kontrolkami podrzędnymi a krawędziami kontrolki nadrzędnej z możliwością przewijania. Rozmiar AutoScrollMargin jest dodawany do rozmiaru wszystkich kontrolek podrzędnych zawartych w kontrolce z możliwością przewijania, aby określić, czy są potrzebne paski przewijania. Właściwość AutoScrollMargin jest oceniana, gdy kontrolka z możliwością przewijania nadrzędnego jest zmieniana lub poszczególne kontrolki podrzędne są wprowadzane do widoku i służy do określania, czy paski przewijania muszą być wyświetlane. Zadokowane kontrolki są wykluczane z obliczeń, które określają, czy paski przewijania muszą być wyświetlane.

Uwaga

Jeśli właściwość zadokowanej kontrolki Dock jest ustawiona na DockStyle.Fill, kontrolka wypełnia kontrolkę z możliwością przewijania nadrzędnego, a zadokowana kontrolka jest ignorowana podczas używania AutoScrollMargin kontrolki w celu określenia, czy paski przewijania są potrzebne.

Jeśli odległość od krawędzi kontrolki podrzędnej do kontrolki z możliwością przewijania nadrzędnego jest mniejsza niż wartość przypisana do AutoScrollMargin właściwości, a AutoScroll właściwość jest ustawiona na true, zostanie wyświetlony odpowiedni pasek przewijania.

Uwaga

Zalecamy, aby podczas dokowania kontrolek w kontrolce z możliwością przewijania dodać kontrolkę z możliwością przewijania podrzędnego, taką jak Panel, w celu przechowywania innych kontrolek, które mogą wymagać przewijania. Należy dodać kontrolkę podrzędną Panel do kontrolki z możliwością przewijania i jej Dock właściwość ustawioną na DockStyle.Fill i jej AutoScroll właściwość ustawioną na true. Należy ustawić AutoScroll właściwość kontrolki z możliwością przewijania nadrzędnego na false.

Dotyczy

Zobacz też