Поделиться через


ScrollableControl.AutoScrollPosition Свойство

Определение

Получает или задает местоположение позиции автоматической прокрутки.

public:
 property System::Drawing::Point AutoScrollPosition { System::Drawing::Point get(); void set(System::Drawing::Point value); };
[System.ComponentModel.Browsable(false)]
public System.Drawing.Point AutoScrollPosition { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.AutoScrollPosition : System.Drawing.Point with get, set
Public Property AutoScrollPosition As Point

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

Объект Point, который предоставляет позицию автоматической прокрутки (в пикселях).

Атрибуты

Примеры

В следующем примере кода используется производный ScrollableControl класс Panel и кнопка добавляется в левый верхний угол прокручиваемой области. В примере допускается смещение, определяемое .AutoScrollPosition Пример был написан с предположением, что у вас есть объект Form , содержащий Panel объект с элементом .Button Чтобы включить автоматическую прокрутку, поместите кнопку за пределы клиентской Panelобласти .

private:
   void button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      /* Add a button to top left corner of the
            * scrollable area, allowing for the offset. */
      panel1->AutoScroll = true;
      Button^ myButton = gcnew Button;
      myButton->Location = Point(0 + panel1->AutoScrollPosition.X,0 + panel1->AutoScrollPosition.Y);
      panel1->Controls->Add( myButton );
   }
private void button1_Click(object sender, EventArgs e)
{
   /* Add a button to top left corner of the 
    * scrollable area, allowing for the offset. */
   panel1.AutoScroll = true;
   Button myButton = new Button();
   myButton.Location = new Point(
      0 + panel1.AutoScrollPosition.X, 
      0 + panel1.AutoScrollPosition.Y);
   panel1.Controls.Add(myButton);
}
Private Sub button1_Click(sender As Object, _
   e As EventArgs) Handles button1.Click
   ' Add a button to top left corner of the 
   ' scrollable area, allowing for the offset. 
   panel1.AutoScroll = True
   Dim myButton As New Button()
   myButton.Location = New Point( _
      0 + panel1.AutoScrollPosition.X, _
      0 + panel1.AutoScrollPosition.Y)
   panel1.Controls.Add(myButton)
End Sub

Комментарии

Свойство AutoScrollPosition представляет расположение видимой части прокручиваемого элемента управления. Используйте это свойство, чтобы изменить часть отображаемого элемента управления.

При программном добавлении элементов управления в форму используйте AutoScrollPosition свойство , чтобы разместить элемент управления внутри или за пределами текущей просматриваемой области прокрутки.

Примечание

Полученные X значения координат и Y являются отрицательными, если элемент управления прокрутился от начальной позиции (0,0). При установке этого свойства необходимо всегда назначать положительные X значения и Y , чтобы задать позицию прокрутки относительно начальной позиции. Например, если у вас есть горизонтальная полоса прокрутки и задано значение x и y равным 200, вы перемещаете прокрутку на 200 пикселей вправо; Если затем задать значение x и y равным 100, прокрутка будет прыгать влево на 100 пикселей, так как вы устанавливаете ее на 100 пикселей от начальной позиции. В первом случае AutoScrollPosition возвращает {-200, 0}, во втором — .{-100,0}

Чтобы обнаружить AutoScrollPosition изменения, создайте обработчик событий для Paint события, сохраните старое значение позиции в частной переменной и сравните новое значение со старым значением при последующих Paint событиях.

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

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