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 представляющее высоту и ширину поля автокручиваемой прокрутки в пикселях.
Исключения
Примеры
В следующем примере кода используется производный класс Panel. В примере оценивается расположение текстового поля и изменяется внешний вид и поведение родительского контейнера, элемент управления панелью. В этом примере требуется, чтобы вы создали экземпляр Panel элемента управления, TextBoxи Button. Поместите текстовое поле на панель, чтобы оно перекрывалось по крайней мере одним из краев панели. Вызовите эту функцию при нажатии кнопки, чтобы увидеть разницу в поведении и внешнем виде панели.
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 элемент управления в прокручиваемый элемент управления, а его DockAutoScroll свойство имеет значение DockStyle.Fill и его свойствоtrue. Необходимо задать AutoScroll для свойства родительского элемента управления falseпрокрутки значение .