ScrollableControl.AutoScrollMargin Свойство

Определение

Возвращает или задает размер поля автоматической прокрутки.

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

Объект Size, который представляет высоту и ширину (в пикселях) поля автоматической прокрутки.

Исключения

Присваиваемое значение Height или Width меньше 0.

Примеры

В следующем примере кода используется производный класс Panel. В этом примере оценивается расположение текстового поля и изменяется внешний вид и поведение родительского контейнера, элемента управления панели. В этом примере требуется создать экземпляр Panel элемента управления и TextBoxButton. Поместите текстовое поле на панель, чтобы она перекрывала по крайней мере один из краев панели. Вызовите эту функцию при нажатии кнопки, чтобы увидеть разницу в поведении и внешнем виде панели.

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

Комментарии

Поле автоматической прокрутки — это расстояние между любыми дочерними элементами управления и краями прокручиваемого родительского элемента управления. Размер AutoScrollMargin добавляется к размеру всех дочерних элементов управления, содержащихся в прокручиваемом элементе управления, чтобы определить, нужны ли полосы прокрутки. Свойство AutoScrollMargin вычисляется, когда родительский прокручиваемый элемент управления изменяется или отдельные дочерние элементы управления отображаются в представлении, и используется для определения необходимости отображения полос прокрутки. Закрепленные элементы управления исключаются из вычислений, которые определяют, должны ли отображаться полосы прокрутки.

Примечание

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

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

Примечание

При закреплении элементов управления в прокручиваемом элементе управления рекомендуется добавить дочерний прокручиваемый элемент управления( например, для Panelхранения других элементов управления, которые могут потребовать прокрутки). Вы должны добавить дочерний Panel элемент управления в прокручиваемый элемент управления, а его Dock свойство имеет DockStyle.Fill AutoScroll trueзначение . Для свойства родительского прокручиваемого элемента управления следует задать значение AutoScroll false.

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

См. также раздел