ScrollableControl.AutoScrollMargin Свойство

Определение

Получает или задает размер поля автоматической прокрутки.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

Значение свойства

Объект Size, который представляет высоту и ширину (в пикселях) поля автоматической прокрутки.A Size that represents the height and width of the auto-scroll margin in pixels.

Исключения

Присваиваемое значение Height или Width меньше 0.The Height or Width value assigned is less than 0.

Примеры

В следующем примере кода используется производный класс Panel.The following code example uses the derived class, Panel. В примере вычисляется расположение текстового поля и изменяется внешний вид и поведение его родительского контейнера, элемента управления Panel.The example evaluates the location of a text box and changes the appearance and behavior of its parent container, the panel control. В этом примере необходимо создать экземпляр Panel элемента управления, TextBoxи Button.The example requires that you have created an instance of a Panel control, TextBox, and Button. Поместите текстовое поле на панели, чтобы оно перекрывали по крайней мере один из границ панели.Place the text box on the panel so that it overlaps at least one of the panel's edges. Вызовите эту функцию нажатием кнопки, чтобы увидеть разницу в поведении и внешнем виде панели.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

Комментарии

Поле автоматической прокрутки — это расстояние между любыми дочерними элементами управления и краями прокручиваемого родительского элемента управления.The auto-scroll margin is the distance between any child controls and the edges of the scrollable parent control. AutoScrollMargin Размер добавляется к размеру дочерних элементов управления, содержащихся в прокручиваемом элементе управления, чтобы определить, требуются ли полосы прокрутки.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. AutoScrollMargin Свойство вычисляется при изменении размера родительского прокручиваемого элемента управления или при отображении отдельных дочерних элементов управления и используется для определения того, должны ли отображаться полосы прокрутки.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. Закрепленные элементы управления исключаются из вычислений, которые определяют, должны ли отображаться полосы прокрутки.Docked controls are excluded from the calculations that determine if scroll bars must be displayed.

Примечание

Если Dock свойство закрепленного элемента управления имеет DockStyle.Fillзначение, элемент управления заполняет родительский прокручиваемый элемент управления, а закрепленный элемент управления игнорируется при использовании AutoScrollMargin для определения необходимости использования полос прокрутки.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.

Если расстояние от края дочернего элемента управления до родительского прокручиваемого элемента управления меньше значения AutoScrollMargin true, присвоенного свойству, AutoScroll а свойство имеет значение, отображается соответствующая полоса прокрутки.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.

Примечание

При закреплении элементов управления в элементе управления с возможностью прокрутки рекомендуется добавить дочерний прокручиваемый элемент управления, такой как Panel, который будет содержать любые другие элементы управления, для которых может потребоваться прокрутка.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. Дочерний Panel элемент управления следует добавить к прокручиваемому элементу управления Dock , а его DockStyle.Fill AutoScroll свойству — значение, 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. AutoScroll Свойству родительского прокручиваемого falseэлемента управления следует присвоить значение.You should set the AutoScroll property of the parent scrollable control to false.

Применяется к

Дополнительно