Share via


Procedura: gestire le modifiche di orientamento e risoluzione

Aggiornamento: novembre 2007

Nella seguente tabella vengono illustrati gli orientamenti dello schermo di Pocket PC e Smartphone supportati in .NET Compact Framework. Le dimensioni sono espresse in pixel, nel formato larghezza x altezza.

Orientamento dello schermo

Dimensioni normali 96 DPI

Dimensioni normali 192 DPI (alta risoluzione)

Verticale - Pocket PC

Verticale - Smartphone

240 x 320

176 x 220 e 240 x 320

480 x 640

352 x 440 e 480 x 640

Orizzontale - Solo Pocket PC

320 x 240

640 x 480

Quadrato - Solo Pocket PC

240 x 240

480 x 480

È possibile utilizzare le funzionalità di ancoraggio e di aggancio per ridimensionare automaticamente in controlli in modo da adattare il contenuto del form ai differenti orientamenti dello schermo. Mediante l'aggancio si ottiene il mantenimento del controllo alla distanza specificata da un bordo, mentre con l'ancoraggio si ottiene il blocco della posizione del controllo in corrispondenza di un bordo del contenitore padre.

La proprietà Anchor di un controllo ne determina il comportamento di ridimensionamento in occasione del ridimensionamento del relativo controllo o form contenitore. La proprietà Dock di un controllo specifica i bordi del controllo contenitore cui effettuare l'ancoraggio.

Il comportamento delle funzionalità di aggancio e di ancoraggio in .NET Compact Framework è il medesimo della versione completa di .NET Framework.

È possibile personalizzare l'applicazione per adattarla alle differenti impostazioni di risoluzione in pixel espressa in DPI (Dots Per Inch, punti per pollice).

Per gestire una modifica di orientamento dello schermo

  • È possibile inserire controlli che devono occupare un'area specifica del form in un controllo contenitore, quale un controllo Panel, quindi impostare la proprietà Dock del Panel sul bordo desiderato.

  • Per mantenere le dimensioni e la posizione del controllo adeguate alle dimensioni del form, impostare la proprietà Anchor del controllo sulla posizione desiderata.

    Per far sì, ad esempio, che un pulsante sia sempre visualizzato nell'angolo inferiore destro del form e mantenga le stesse dimensioni, utilizzare la seguente istruzione:

    Me.Button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
    
    this.button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
    

In Microsoft Visual Studio 2005, è possibile configurare le impostazioni di aggancio e ancoraggio nel riquadro Proprietà.

Per modificare l'orientamento dello schermo

  • Se il Pocket PC esegue Windows Mobile versione 5.0, è possibile modificare l'orientamento dello schermo da verticale a 0 (zero) gradi a 90, 180 o 270 gradi come specificato dall'enumerazione ScreenOrientation. Mediante la seguente istruzione si imposta, ad esempio, un orientamento orizzontale:

    SystemSettings.ScreenOrientation = ScreenOrientation.Angle270 
    
    SystemSettings.ScreenOrientation = ScreenOrientation.Angle270;
    

    Si noti che le modifiche di orientamento dello schermo non sono limitate all'applicazione, ma si applicano all'intero dispositivo. Pertanto, sarebbe consigliabile reimpostare il valore originale dell'orientamento dello schermo nel codice di gestione eventi per l'evento FormClosing.

Per gestire una modifica di risoluzione dello schermo

  • Quando si crea un progetto per dispositivi Smart Device in Microsoft Visual Studio 2005, nella finestra di progettazione viene fornito il codice per l'adattamento automatico dei controlli alla risoluzione dello schermo del dispositivo. Questa funzionalità impedisce che, se l'applicazione viene eseguita su un dispositivo con una risoluzione di DPI differente da quella del dispositivo usato in fase di sviluppo, il form appaia troppo grande o troppo piccolo. Pertanto, sarebbe necessario adattare adeguatamente i controlli del form.

    Quando si crea un progetto per dispositivi Smart Device in Visual Studio 2005, nella finestra di progettazione vengono aggiunte le seguenti istruzioni al metodo InitializeComponent:

    [Visual Basic]

    Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
    Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
    

    [C#]

    this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
    this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
    

    Queste istruzioni si riferiscono a un'applicazione sviluppata per un dispositivo con una risoluzione di 96 DPI e prevedono l'adattamento automatico in base alla modalità DPI. 96 DPI è il valore predefinito ottenuto dal computer desktop che esegue Visual Studio 2005. Il codice viene automaticamente generato nella finestra di progettazione; i controlli del form verranno automaticamente adattati per gestire differenti impostazioni di DPI.

    L'adattamento automatico non si applica all'eventuale grafica disegnata mediante il metodo OnPaint contenuta nell'applicazione. Per determinare l'adattamento appropriato sarà necessario utilizzare le proprietà DpiX e DpiY degli oggetti Graphics. Un esempio di adattamento manuale viene fornito nell'articolo Esempio di testo ruotato mediante LogFont.

Vedere anche

Attività

Procedura: allineare un controllo ai bordi dei form

Concetti

Ridimensionamento automatico in Windows Form

Altre risorse

Controlli Windows Form in .NET Compact Framework