Freigeben über


ScrollableControl.AutoScrollMargin-Eigenschaft

Ruft die Größe des AutoBildlaufrandes ab oder legt diese fest.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
<LocalizableAttribute(True)> _
Public Property AutoScrollMargin As Size
'Usage
Dim instance As ScrollableControl
Dim value As Size

value = instance.AutoScrollMargin

instance.AutoScrollMargin = value
[LocalizableAttribute(true)] 
public Size AutoScrollMargin { get; set; }
[LocalizableAttribute(true)] 
public:
property Size AutoScrollMargin {
    Size get ();
    void set (Size value);
}
/** @property */
public Size get_AutoScrollMargin ()

/** @property */
public void set_AutoScrollMargin (Size value)
public function get AutoScrollMargin () : Size

public function set AutoScrollMargin (value : Size)

Eigenschaftenwert

Eine Size, die die Höhe und Breite des AutoBildlaufrands in Pixel darstellt.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentOutOfRangeException

Der zugewiesene Height-Wert oder Width-Wert ist kleiner als 0 (null).

Hinweise

Der AutoBildlaufrand ist der Zwischenraum zwischen einem beliebigen untergeordneten Steuerelement und den Rändern des bildlauffähigen übergeordneten Steuerelements. Die Größe des AutoScrollMargin wird zu der Größe eines beliebigen untergeordneten Steuerelements im bildlauffähigen Steuerelement addiert, um zu bestimmen, ob Bildlaufleisten erforderlich sind. Die AutoScrollMargin-Eigenschaft wird ausgewertet, wenn die Größe des übergeordneten bildlauffähigen Steuerelements geändert wird oder die einzelnen untergeordneten Steuerelemente in den sichtbaren Bereich verschoben werden. Diese Eigenschaft wird außerdem verwendet, um zu bestimmen, welche Bildlaufleisten angezeigt werden müssen. Angedockte Steuerelemente werden bei den Berechnungen nicht berücksichtigt, anhand derer bestimmt wird, ob Bildlaufleisten angezeigt werden müssen.

Hinweis

Wenn die Dock-Eigenschaft eines Steuerelements auf DockStyle.Fill festgelegt ist, füllt das Steuerelement das übergeordnete bildlauffähige Steuerelement aus, und das angedockte Steuerelement wird bei der Verwendung von AutoScrollMargin für die Bestimmung der erforderlichen Bildlaufleisten ignoriert.

Wenn der Abstand zwischen dem Rand eines untergeordneten Steuerelements und dem eines übergeordneten Steuerelements geringer ist als der der AutoScrollMargin-Eigenschaft zugewiesene Wert und die AutoScroll-Eigenschaft auf true festgelegt ist, wird die entsprechende Bildlaufleiste angezeigt.

Hinweis

Es wird empfohlen, für Steuerelemente, die innerhalb eines bildlauffähigen Steuerelements angedockt werden sollen, ein untergeordnetes bildlauffähiges Steuerelement wie Panel hinzuzufügen, das alle weiteren Steuerelemente aufnimmt, für die ein Bildlauf erforderlich sein kann. Sie müssen das untergeordnete Panel-Steuerelement dem bildlauffähigen Steuerelement hinzufügen, dessen Dock-Eigenschaft auf DockStyle.Fill und die AutoScroll-Eigenschaft auf true festlegen. Sie müssen die AutoScroll-Eigenschaft des übergeordneten bildlauffähigen Steuerelements auf false festlegen.

Beispiel

Im folgenden Codebeispiel wird die abgeleitete Klasse Panel verwendet. Im Beispiel wird die Position eines Textfelds ausgewertet und die Darstellung sowie das Verhalten des übergeordneten Containers, also des Auswahlbereich-Steuerelements, geändert. Für das Beispiel ist es erforderlich, dass Sie eine Instanz von einem Panel-Steuerelement, TextBox und Button erstellt haben. Platzieren Sie das Textfeld so im Auswahlbereich, dass dieses mindestens eine Seite des Bereichs überlappt. Rufen Sie diese Funktion durch Klicken auf eine Schaltfläche auf, um den Unterschied in Verhalten und Darstellung des Auswahlbereichs zu erkennen.

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
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);
       }
    }
 }
 
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.get_Location().get_X() > panel1.get_Location().get_X() 
        || text1.get_Location().get_Y() > panel1.get_Location().get_Y()) {
        
        panel1.set_AutoScroll(true);

        /* If the AutoScrollMargin is set to less 
           than (5,5), set it to 5,5. */
        if (panel1.get_AutoScrollMargin().get_Width() < 5 
            || panel1.get_AutoScrollMargin().get_Height() < 5) {
                panel1.SetAutoScrollMargin(5, 5);
        }
    }
} //SetAutoScrollMargins

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0

Siehe auch

Referenz

ScrollableControl-Klasse
ScrollableControl-Member
System.Windows.Forms-Namespace
ScrollableControl.AutoScroll-Eigenschaft
SetAutoScrollMargin
AutoScrollPosition
AutoScrollMinSize
DisplayRectangle