Frage

Ich habe eine Anwendung, bei der, wenn einer Person Arten oder wählt einen listbox gibt es einen Teil des Bildschirms, die dynamisch-Updates auf eine neue Ansicht.

Das Problem ist, da WPF alles in einem einzigen Thread läuft die der Ansicht angezeigt wird mit der Eingabe interferieren können oder die Navigation machen die App weniger reagieren. Was Sie mag würde tun, ist die Ansicht, Teil in einem anderen Thread ausgeführt werden.

Mein erster Gedanke war, ein Fenster zu verwenden, um auf einem anderen Thread ausgeführt wird, aber mehr als etwas wie ein Hack ist es das Problem des Fenster des Fokus verliert und hinter dem Hauptfenster platziert werden, wenn das Hauptfenster angeklickt wird. Ich konnte machen es oberste, aber ich muss auch andere Fenster vor ihm platzieren.

Also, was ist der beste Weg, dies zu erreichen, kann ich die Ansicht in einem Rahmen platzieren und es in einem anderen Thread ausgeführt werden?

Keine korrekte Lösung

Andere Tipps

Sie können die Daten in einem Hintergrundthread laden / generieren und dann die Benutzeroberfläche aktualisieren mit Dispatcher.BeginInvoke .

Ich würde vorschlagen, Sie die Sichtbarkeit Eigenschaft dieses Stückes des Bildschirms bedienen, dass Sie einen Trigger erscheinen und verwenden machen wollen sie von Invisible einstellen oder Komprimiert auf Sichtbar, wenn der Benutzer oder selecs. Oder Sie können die Deckkraft-Eigenschaft animieren einen kühlen Fading-Effekt zu erzeugen ;-) Ich werde einige Code hinzufügen, um den Punkt zu veranschaulichen. EDIT: eine Zeit Backgroundraubend, wie Dateioperationen kann eine

scroll top