ScrollableControl.AutoScrollMargin Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el tamaño del margen de desplazamiento automático.
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
Valor de propiedad
Size que representa el alto y ancho en píxeles del margen de desplazamiento automático.
Excepciones
Ejemplos
En el ejemplo de código siguiente se usa la clase derivada , Panel. En el ejemplo se evalúa la ubicación de un cuadro de texto y se cambia la apariencia y el comportamiento de su contenedor primario, el control del panel. El ejemplo requiere que haya creado una instancia de un Panel control, TextBoxy Button. Coloque el cuadro de texto en el panel para que se superponga al menos uno de los bordes del panel. Llame a esta función en el clic de un botón para ver la diferencia en el comportamiento y la apariencia del panel.
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
Comentarios
El margen de desplazamiento automático es la distancia entre los controles secundarios y los bordes del control primario desplazable. El AutoScrollMargin tamaño se agrega al tamaño de cualquier control secundario incluido en el control desplazable para determinar si se necesitan barras de desplazamiento o no. La AutoScrollMargin propiedad se evalúa cuando se cambia el tamaño del control desplazable primario o se muestran los controles secundarios individuales y se usa para determinar si se deben mostrar las barras de desplazamiento. Los controles acoplados se excluyen de los cálculos que determinan si se deben mostrar las barras de desplazamiento.
Nota
Si la propiedad de Dock un control acoplado se establece DockStyle.Fillen , el control rellena el control desplazable primario y el control acoplado se omite cuando se usa AutoScrollMargin para determinar si se necesitan barras de desplazamiento.
Si la distancia desde el borde de un control secundario al control desplazable primario es menor que el valor asignado a la AutoScrollMargin propiedad y la AutoScroll propiedad se establece true
en , se muestra la barra de desplazamiento adecuada.
Nota
Se recomienda, al acoplar controles dentro de un control desplazable, que agregue un control desplazable secundario, como , Panelpara contener cualquier otro control que pueda requerir desplazamiento. Debe agregar el control secundario Panel al control desplazable y su Dock propiedad establecida en DockStyle.Fill y su AutoScroll propiedad establecida en true
. Debe establecer la AutoScroll propiedad del control desplazable primario en false
.