2010-12-07 4 views
0

Wenn ich "this.close()" aufrufen, um zu einer anderen Seite zu gelangen. Dieser Effekt des Schließens, und für eine Sekunde werden keine Seiten angezeigt. Wie kann ich das bitte reparieren?WPF - Wie kann ich den Effekt "this.close()" entfernen?

Zum Beispiel:


Game game = new Game(); 
game.show(); 
this.close(); 

Wenn ich rufe this.close() für eine zweite gibt es einen Effekt von nicht angezeigten Seiten. Ich möchte und ähnliche Browser ähnlich.

+0

Ich bin nicht sicher Ihre Frage ergibt einen Sinn. Können Sie bearbeiten, um Ihr Problem besser zu erklären? –

+0

getan. Verstehst du jetzt? – Seva

Antwort

1

In Windows 7 bewirkt der Aero-Effekt, dass Fenster ein- und ausgeblendet werden und geschlossen werden. Dies war ein Problem für eine der Anwendungen, die ich in der Entwicklung übernommen habe, und ich löste mein Problem, indem ich mich von separaten Formularen entfernte, die sich einfach gegenseitig auf dem Bildschirm ersetzten. Meine WPF-Erfahrung ist begrenzt, daher müssen Sie möglicherweise meine Lösung interpretieren:

Ich konvertierte alle Formularobjekte im Programm in separate UserControls. Mein Hauptformular hatte eine Active Eigenschaft, die ein wenig so aussah:

// Code is untested 
public Control ActiveScreen 
{ 
    get { return _screen; } 
    private set 
    { 
     this.Controls.Remove(_screen); 
     _screen = value; 
     _screen.Dock = DockStyle.Fill; 
     _screen.Size = this.ClientRectangle.Size; // So that control draws correctly the first time. 
     this.Controls.Add(_screen); 
    } 
} 

Nach einer schnellen Suche zu tun, es gibt sicherlich andere Möglichkeiten, um den Aero-Effekt zu erhalten: Disable aero fade-in effect on dialog

Verwandte Themen