HorizontalScroll di una form Mdi

di il
2 risposte

HorizontalScroll di una form Mdi

Buongiorno,
ho una form Mdi con diverse form figlie.
Le form figlie possono essere spostate trascinandole con il mouse fuori dall'area di visualizzazione della form Mdi padre, quando questo succede si visualizza la HorizontalScroll della form mdi padre, quindi spostanto il cursore della HorizontalScroll visualizzo o non visualizzo (a seconda della posizione del curosre) la form figlia.
Il mio problema è quello di controllare da codice il valore e la posizione dell'HorizontalScroll in modo tale che se da codice attivo il focus su una form il valore dell'HorizontalScroll possa essere modificato in modo da visualizzare la form figlia al centro della form padre.

Grazie

2 Risposte

  • Re: HorizontalScroll di una form Mdi

    O più semplicemente come visualizzo in primo piano una form figlia che si trova oltre al bordo interno di una form padre?
    Grazie
  • Re: HorizontalScroll di una form Mdi

    Per permettere all'utente rapidamente di poter riallineare e vedere tutti i children aperti io implementerei i bottoni di "arrange" Tile e Cascade
    this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade);

    Sulla MDI e poi, credo che il metodo più semplice sia spostare la Location della form nell'area visibile della MDI e riportare il suo stato della visualizzazione a Normal, in modo che se fosse stata minimizzata ti appaia a dimensioni normali.

    Per sapere dove sono le scrollbar di una Form puoi provare:
    form.VerticalScroll.Value
    form.HorizontalScroll.Value

    Non so se possano essere modificati e come dovresti calcolarne il valore per visualizzare in modo preciso una finestra child.
    saluti
Devi accedere o registrarti per scrivere nel forum
2 risposte