Procedura: definire il ridimensionamento e il posizionamento in una finestra divisa

I pannelli del SplitContainer controllo si prestano bene a essere ridimensionati e manipolati dagli utenti. Tuttavia, ci saranno momenti in cui si vuole controllare a livello di codice il separatore, dove è posizionato e in quale grado può essere spostato.

La SplitterIncrement proprietà e le altre proprietà sul SplitContainer controllo offrono un controllo preciso sul comportamento dell'interfaccia utente in base alle proprie esigenze. Queste proprietà sono elencate nella tabella seguente.

Nome Descrizione
Proprietà IsSplitterFixed Determina se il separatore è mobile tramite la tastiera o il mouse.
Proprietà SplitterDistance Determina la distanza in pixel dal bordo sinistro o superiore alla barra di divisione mobile.
Proprietà SplitterIncrement Determina la distanza minima, in pixel, che il separatore può essere spostato dall'utente.

L'esempio seguente modifica la SplitterIncrement proprietà per creare un effetto di divisione di allineamento. Quando l'utente trascina il separatore, incrementa in unità di 10 pixel anziché il valore predefinito 1.

Per definire il comportamento di ridimensionamento splitContainer

  1. In una routine impostare la SplitterIncrement proprietà sulla dimensione desiderata, in modo che venga ottenuto il comportamento di "snapping" del separatore.

    Nell'esempio di codice seguente, all'interno dell'evento del Load modulo, il separatore all'interno del SplitContainer controllo viene impostato per saltare 10 pixel quando viene trascinato.

    Private Sub Form1_Load(ByVal sender As System.Object, _  
        ByVal e As System.EventArgs) Handles MyBase.Load  
        Dim splitSnapper as new SplitContainer()  
        splitSnapper.SplitterIncrement = 10  
        splitSnapper.Dock = DockStyle.Fill  
        splitSnapper.Parent = me  
    End Sub  
    
    private void Form1_Load(System.Object sender, System.EventArgs e)  
    {  
        SplitContainer splitSnapper = new SplitContainer();  
        splitSnapper.SplitterIncrement = 10;  
        splitSnapper.Dock = DockStyle.Fill;  
        splitSnapper.Parent = this;  
    }  
    

    (Visual C#) Inserire il codice seguente nel costruttore del modulo per registrare il gestore eventi.

    this.Load += new System.EventHandler(this.Form1_Load);  
    

    Lo spostamento del separatore leggermente a sinistra o a destra non avrà alcun effetto rilevabile; Tuttavia, quando il puntatore del mouse passa 10 pixel in entrambe le direzioni, il separatore si aggancierà alla nuova posizione.

Vedi anche