2011-06-23 9 views
5

Kiedy mój modalne ChildWindow zamyka, kontrola rodziców nie dostać „un-szare” i wszystkie dane wprowadzone przez użytkownika jest zablokowane, zmuszając mnie do ponownego uruchomienia aplikacji. Dokładny scenariusz, który powoduje to zachowanie konsekwentnie:Silverlight: Modal ChildWindow utrzymuje rodzica wyszarzoną po zamknięciu

  1. ChildWindow A pojawia się i użytkownik klika niestandardowy przycisk w dolnej części okna (zamiast OK lub Anuluj). Mój kod działa, a następnie wywołuje metodę Close() dla ChildWindow.
  2. ChildWindow A zamyka się i funkcjonalność jest przywracana do kontroli nadrzędnej (kontrole są odszarzane).
  3. Użytkownik powoduje, że ChildWindow B pojawia się. Użytkownik klika wygenerowany przez system przycisk OK lub Anuluj.
  4. ChildWindow B zamyka się, ale kontrole nadrzędne są nadal wyszarzone i niedostępne.

Jedno z okien działa poprawnie na własną rękę. jakieś pomysły?

+0

Nie można odtworzyć. Być może jest problem w "Mój kod działa?" – AnthonyWJones

+0

To mi się przydarzyło jakiś czas temu. W moim przypadku otwierałem drugie ChildWindow w tym samym czasie, kiedy zamykałem pierwsze. Rozwiązany przez udzielenie pierwszego ChildWindow czasu zamknięcia. – NestorArturo

Odpowiedz

7

Widziałem coś podobnego (to nie może ustalić dokładną problem) i znaleźć jakąś dyskusję o ChildWindow here

zasugerowali tej metody w przypadku Zamkniętej ChildWindow i pracował dla mnie.

Application.Current.RootVisual.SetValue(Control.IsEnabledProperty, true); 

Spróbuj także wywołać to.DialogResult = true zamiast metody Close.

+2

Ta linia faktycznie działa dla mnie: Application.Current.RootVisual.SetValue (Control.IsEnabledProperty, true); – Roboblob

Powiązane problemy