Kontrolki na Pivocie znikają


111

Mam aplikację z kontrolką przestawną. Formant przestawny ma dwa elementy (strony), oba zawierają plik grid. Siatki zawierają kilka przycisków, z których jeden stanowi mapę, a drugi blok tekstowy. Gdy aplikacja jest uruchamiana po raz pierwszy, przestawienie działa zgodnie z oczekiwaniami. Jednak po pewnym czasie działania aplikacji, np. Jednego dnia, wszystkie elementy sterujące na przegubie znikają po obróceniu (lub przesunięciu). Pojawiają się one na chwilę podczas przesuwania, ale znikają ponownie, gdy oś się zatrzyma.

Czy ktoś jeszcze tego doświadczył? Jaka może być przyczyna i rozwiązanie?

Wideo: http://www.youtube.com/watch?v=nd7bfTJ53Nk

Kod: https://github.com/JamieKitson/TrackLog/


4
Mamy ten sam problem. Aplikacja z zadaniem w tle i obrotem. Od czasu do czasu niezbyt często mamy ten problem. Znaleźliśmy wyjątek w wypadku dziennika z naszymi klientami, ale nie w naszym kodzie: CDirectManipulationPivot :: MoveToPosition wpisz wyjątek: "c0000005" Stos: CDirectManipulationPivot :: MoveToPosition, CDirectManipulationPivot :: OnManipulationCompleted ... CDirectManipulationServer :: ServerThreadStatic, RtlUserThreadStart
Michał Dobrodenka

1
Czy możesz wyjaśnić, w jaki sposób aplikacja i problem zależą od agenta działającego w tle, który został wyłączony w wideo?
Alex Sorokoletov,

1
Czy możesz podać xaml dla kontrolki Pivot i być może jakieś błędy / wyjątki wyświetlane w konsoli wyjściowej?
Chris Leyva,

@AlexSorokoletov Aplikacja i agent działający w tle to jedno i to samo, błąd występuje tylko wtedy, gdy aplikacja działa przez długi czas, np. Jeden dzień, więc będzie się to działo (afaik) tylko w przypadku zadań w tle. W filmie zabijam zadanie w tle, aby zmusić je do ponownego uruchomienia, lecząc błąd.
Jamie Kitson

Odpowiedzi:


1

Dość stare pytanie, ale wciąż bez odpowiedzi. Wygląda na to, że Application_Deactivateddzieje się tak z powodu obsługi zdarzeń, która działa, gdy aplikacja jest wysyłana w tle:

private void Application_Deactivated(object sender, DeactivatedEventArgs e)
{
     diagLog("Deactivated, reason: " + e.Reason);
}

W tym programie obsługi zdarzeń należy ustawić RunningInBackground = true

Mam nadzieję, że to pomoże


0

Stoję przed tym samym problemem, który został dziwnie rozwiązany.

Jeśli używam Grid wewnątrz PivotItem, ten problem pojawia się, ale kiedy używam innej kontrolki, takiej jak StackPanel lub coś innego, działa dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.