2010-08-17 18 views
13

Come si ingrandisce una finestra a livello di codice in modo che non possa essere ridimensionata quando lo stato raggiunge lo stato ingrandito (ad esempio, ingrandisci Internet   Explorer e visualizzarlo)?Ingrandire una finestra a livello di codice e impedire all'utente di modificare lo stato di Windows

I set di proprietà FormWindowState come

this.WindowState = FormWindowState.Maximized; 
this.MaximizedBounds = (x,y); 

ma non funziona. Come faccio a fare questo?

La finestra che voglio massimizzare è una finestra nella mia applicazione.

+0

È una finestra nell'applicazione o nella finestra di un altro programma che si desidera ingrandire? –

risposta

-2

Per massimizzare l'utilizzo di programmazione WindowState:

WindowState = FormWindowState.Maximized; 
this.MaximizeBox = false; 
+0

quello che hai usato è statowindowstate qual'è il tuo nome? – anishMarokey

25

Quando il modulo è ingrandito, impostare la sua dimensione = dimensione minima massima, quindi l'utente non può ridimensionarla.

this.WindowState = FormWindowState.Maximized; 
    this.MinimumSize = this.Size; 
    this.MaximumSize = this.Size; 
+0

+1, grazie! È stato utile per me :) –

3

Per fermare la finestra ridimensionabile essere una volta che hai massimizzato che è necessario modificare il FormBorderStyle da Sizable a una delle costanti fisse:

FixedSingle 
Fixed3D 
FixedDialog 

Dalla sezione MSDN Page Osservazioni:

Lo stile del bordo della forma determina la modalità di visualizzazione del bordo esterno del modulo. Oltre a modificare la visualizzazione del bordo per un modulo, alcuni stili di bordo impediscono il dimensionamento del modulo. Ad esempio, lo stile del bordo FormBorderStyle.FixedDialog modifica il bordo del modulo in quello di una finestra di dialogo e impedisce il ridimensionamento del modulo. Lo stile del bordo può anche influire sulla dimensione o sulla disponibilità della sezione della barra del titolo di un modulo.

Cambierà l'aspetto del modulo se si sceglie Fixed3D per esempio, e probabilmente hanno a che fare un certo lavoro, se si desidera che il modulo per ripristinare a non ingrandita ed essere di nuovo ridimensionabile.

5

Si erano vicini ... dopo il vostro codice di

WindowState = FormWindowState.Maximized; 

Quindi, impostare la capacità min/max dimensione del form al valore una volta che la sua grandezza fuori.

MinimumSize = this.Size; 
MaximumSize = this.Size; 
+0

puoi anche scrivere semplicemente 'MinimumSize = MaximumSize = this.Size;' – balexandre

+4

@balexandre, sì, ma con la sua reputazione a 58, non volevo confondere la persona con quanto multiplo gli incarichi possono funzionare in un singolo flusso di variabili. – DRapp

0

Modificare la proprietà WindowState a System.Windows.Forms.FormWindowState.Maximized, in alcuni casi, se le risposte più anziani non funziona.

Quindi la finestra verrà ingrandita e le altre parti sono nelle altre risposte.

Problemi correlati