ScrollableControl.AutoScrollMargin Właściwość

Definicja

Pobiera lub ustawia rozmiar marginesu autoprzewijania.Gets or sets the size of the auto-scroll margin.

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

Size

SizeReprezentujący wysokość i szerokość marginesu autoprzewijania (w pikselach).A Size that represents the height and width of the auto-scroll margin in pixels.

Wyjątki

HeightPrzypisana Width wartość lub jest mniejsza niż 0.The Height or Width value assigned is less than 0.

Przykłady

Poniższy przykład kodu używa klasy pochodnej Panel .The following code example uses the derived class, Panel. Przykład szacuje lokalizację pola tekstowego i zmienia wygląd i zachowanie jego kontenera nadrzędnego, kontrolki panel.The example evaluates the location of a text box and changes the appearance and behavior of its parent container, the panel control. Przykład wymaga, aby utworzono wystąpienie Panel kontrolki, TextBox i Button .The example requires that you have created an instance of a Panel control, TextBox, and Button. Umieść pole tekstowe w panelu, aby zachodzić na co najmniej jeden z krawędzi panelu.Place the text box on the panel so that it overlaps at least one of the panel's edges. Wywołaj tę funkcję po kliknięciu przycisku, aby zobaczyć różnicę w zachowaniu i wyglądzie panelu.Call this function on the click of a button to see the difference in the panel's behavior and appearance.

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 autoprzewijania to odległość między dowolnymi kontrolkami podrzędnymi a krawędziami kontrolki nadrzędnej przewijalnej.The auto-scroll margin is the distance between any child controls and the edges of the scrollable parent control. AutoScrollMarginRozmiar jest dodawany do rozmiaru wszelkich formantów podrzędnych zawartych w kontrolce przewijalnej, aby określić, czy są potrzebne paski przewijania.The AutoScrollMargin size is added to the size of any child controls contained in the scrollable control to determine whether or not scroll bars are needed. AutoScrollMarginWłaściwość jest oceniana, gdy zmieniany jest rozmiar nadrzędnej kontrolki przewijania lub poszczególne kontrolki podrzędne są uwzględniane w widoku, i służą do określenia, czy należy wyświetlić paski przewijania.The AutoScrollMargin property is evaluated when the parent scrollable control is resized or the individual child controls are brought into view, and is used to determine if scroll bars must be displayed. Zadokowane kontrolki są wykluczone z obliczeń, które określają, czy należy wyświetlić paski przewijania.Docked controls are excluded from the calculations that determine if scroll bars must be displayed.

Uwaga

Jeśli właściwość zadokowanej kontrolki Dock jest ustawiona na DockStyle.Fill , formant wypełnia nadrzędną kontrolkę przewijania, a zadokowany formant jest ignorowany przy użyciu, AutoScrollMargin Aby określić, czy paski przewijania są konieczne.If a docked control's Dock property is set to DockStyle.Fill, the control fills the parent scrollable control and the docked control is ignored when using the AutoScrollMargin to determine whether scroll bars are needed.

Jeśli odległość między krawędzią kontrolki podrzędnej a nadrzędną kontrolką przewijania jest mniejsza niż wartość przypisana do AutoScrollMargin właściwości AutoScroll , a właściwość jest ustawiona na, zostanie true wyświetlony odpowiedni pasek przewijania.If the distance from the edge of a child control to the parent scrollable control is less than the value assigned to the AutoScrollMargin property and the AutoScroll property is set to true, the appropriate scroll bar is displayed.

Uwaga

Zalecamy, aby podczas dokowania kontrolek w kontrolce przewijalnej dodać formant podrzędny, taki jak Panel ,, aby zawierał inne kontrolki, które mogą wymagać przewijania.We recommend, when docking controls within a scrollable control, that you add a child scrollable control, such as a Panel, to contain any other controls that might require scrolling. Należy dodać Panel formant podrzędny do kontrolki przewijalnej, a jej Dock Właściwość ustawiona na DockStyle.Fill , a jej AutoScroll Właściwość ustawiona na true .You should add the child Panel control to the scrollable control and its Dock property set to DockStyle.Fill and its AutoScroll property set to true. Należy ustawić AutoScroll Właściwość nadrzędnej kontrolki przewijania na false .You should set the AutoScroll property of the parent scrollable control to false.

Dotyczy

Zobacz też