рддреЗрдЬреА рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░рд┐рдгрд╛рдордлрд╝реЛрдЯреЛ рд╣рдм рдореЗрдВ
рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдореЗрдВ, рдЖрдЬ рд╣рдо
рдлрд╛рд╕реНрдЯ рдПрдкреНрд▓реАрдХреЗрд╢рди рд░рд┐рдЬреНрдпреВрдореЗ рдереАрдо рдХреЛ рдкреНрд░рдХрдЯ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ WP8 рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рдерд╛, рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рджреГрд╢реНрдп рдХреНрдпрд╛ рд╣реИрдВред
рдЖрдЧреЗ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ рдлреЛрдЯреЛ рд╢реЗрдпрд░рд┐рдВрдЧ, рдкреБрд╢ рдЕрдзрд┐рд╕реВрдЪрдирд╛, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдлрд╛рд╕реНрдЯ рд░рд┐рдЬреНрдпреВрдореЗ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╕рдорд╕реНрдпрд╛ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рд▓рдЧрднрдЧ рдирд╣реАрдВред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЕрдкрдиреЗ рдлреЛрди (WP8 рдЕрдкрдбреЗрдЯ 3) рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдирдП рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде Url рдХреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐,
рдЯреЗрдХреНрд╕реЗрдбреЛ рд╕рд╣рдХрд░реНрдореА рдиреЗ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдкрд░рд┐рджреГрд╢реНрдп рджрд┐рдЦрд╛рдпрд╛, рдЬрд┐рд╕рдореЗрдВ AppResume рдХреЗ рд╕рд╛рде рдПрдХ рдмрдЧ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдРрдк рдореЗрдВ рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рд╢рд╛рдорд┐рд▓ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрдо рдХрд┐рдП рдмрд┐рдирд╛ рд╕реНрдХреНрд░реАрди рдХреЛ рд▓реЙрдХ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЯреЛрд╕реНрдЯ рдпреВрдЖрд░рдПрд▓ рдХреЛ рдЬрд╛рдиреЗ рдмрд┐рдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрд╕ рдмрд╣рд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
App Resume рдХрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣реИ?рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╢рд╛рд╕реНрддреНрд░реАрдп рдореЙрдбрд▓ рдореЗрдВ, рдПрдХ рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдирд╛ (рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ рдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╕рдордп) рди рдХреЗрд╡рд▓ рд▓реЙрдиреНрдЪ рд╣реЛрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд▓реЙрдиреНрдЪ рд╣реЛрдиреЗ рдФрд░ рдХрдо рд╕реЗ рдХрдо рд╣реЛрдиреЗ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рднреА рдХрд░рддрд╛ рд╣реИред рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдЪрд▓ рд░рд╣реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреИрд╕реЗ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдмреИрдХ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рд▓реМрдЯрд╛ рдерд╛ред "рднрд╛рд░реА" рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдиреЗ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рдВрдЧрдард┐рдд рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд░рдирд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд▓реМрдЯрдирд╛ рдмрд╣реБрдд рддреЗрдЬ рд╣реИ, рдЬреЛ рдХрд┐ рд╡рд┐рд╖рдпрд╡рд╕реНрддреБ рдХреЛ "рдкреНрд░рд╛рд░рдВрдн" рд╕рдордп рдХреЛ рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред
рдЬреИрд╕реЗ рдХрд┐ рдлрд╛рд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрд╡рд┐рдЪ (рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдХреЗ рд╡рд┐рдкрд░реАрдд, "рдмреИрдХ" рдмрдЯрди рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬрд▓реНрджреА рд╕реЗ рд░рдирд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИ), рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдЯреЙрдореНрдмрд╕реНрдЯреЛрди рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдирд╣реАрдВ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди "рд╕реЛ рдЧрдпрд╛" рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред
рдЕрдм рд╣рдо рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХреИрд╕реЗ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рд░рд┐рдЯрд░реНрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдХреЛ рдХреИрд╕реЗ рдЗрдиреЗрдмрд▓ рдХрд░реЗрдВрдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ: рдЖрдк рд╕рднреА рдХреЛ WMAppManifest.xml рдлрд╝рд╛рдЗрд▓ рдХреЛ XML рд╕рдВрдкрд╛рджрди рдореЛрдб рдореЗрдВ рдЦреЛрд▓реЗрдВ (рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдореЗрдВ - рд╕рд╛рде рдЦреЛрд▓реЗрдВ - Xml рд╕рдВрдкрд╛рджрдХ) рдФрд░ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝реЗрдВ:
ActivationPolicy="Resume"
<DefaultTask />
ред
рдЕрдВрддрддрдГ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ:
<DefaultTask Name ="_default" NavigationPage="MainPage.xaml" />
рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:
<DefaultTask Name ="_default" NavigationPage="MainPage.xaml" ActivationPolicy="Resume"/>
рдРрдк рдХреИрд╕реЗ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИрдРрдк рд░рд┐рдЬреНрдпреВрдореЗ рдХреЗ рдХрд╛рдо рдХрд╛ рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рджреЛ рдкреГрд╖реНрдареЛрдВ рдХреЗ рдмреАрдЪ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд░рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рджреЛрдиреЛрдВ рдкреГрд╖реНрдареЛрдВ рдкрд░ рд╣рдо рдХреБрдЫ рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдорд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕реЗ рдмрдЯрди рджреНрд╡рд╛рд░рд╛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╣рдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рджрд┐рдЦрд╛рдПрдВрдЧреЗ, рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдпрд╛ рд╕рдХреНрд░рд┐рдпред
рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдорд╛рди рдПрдХ рд╕реНрдерд┐рд░ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рд╕реНрдерд┐рд░ рд╡рд░реНрдЧ рдореЗрдВ рдореЗрдореЛрд░реА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ OnNavigateTo рдореЗрдВ рджреЛрдиреЛрдВ рдкреГрд╖реНрдареЛрдВ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
static class FakeCacheStorage { public static int Counter { get; set; } }
App Resume рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд▓рд╛рдЗрди рдореЗрдВ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
RootFrame.Navigated + = CheckForResetNavigation;
App.xaml.cs рдореЗрдВ, рдЬрд╣рд╛рдВ рдХреЛрдб рдХреЛ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдлрд╛рд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдХреБрдЫ рд╕рдВрдЦреНрдпрд╛ рддрдХ рдмрдврд╝рд╛рдПрдВ (рдЗрд╕реЗ 4 рд╣реЛрдиреЗ рджреЗрдВ) рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдЖрд╡реЗрджрди рдХреЛ рдХрдо рдХрд░рдиреЗ рдФрд░ "рдмреИрдХ" рдмрдЯрди рдкрд░ рд▓реМрдЯрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ


рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ рдЙрдореНрдореАрдж рдХреА рдереА, рд╕рд╛рд░рд╛ рдЕрдВрддрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдореЗрдВ рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдлрд┐рд░ "рдмреИрдХ" рдмрдЯрди рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЕрдЧрд░ рд╣рдордиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрдо рдХрд░ рджрд┐рдпрд╛ рдФрд░ рдмреИрдХ рдмрдЯрди рдХреЗ рдмрдЬрд╛рдп рдореБрдЦреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЯрд╛рдЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ред

рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдерд╛, рдФрд░ рд╣рдо рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рдереЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЪрд░ рдХрд╛ рдореВрд▓реНрдп рд░реАрд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рдЖрдкрдХреЛ рднрдВрдбрд╛рд░рдг рд╕реЗ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдФрд░ рдЕрдм, рдпрджрд┐ рдЖрдк рдореЗрдирд┐рдлреЗрд╕реНрдЯ рдореЗрдВ App Resume рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ, рдЕрдВрдд рдореЗрдВ, рд╣рдо рдПрдХ рдЕрд▓рдЧ рддрд╕реНрд╡реАрд░ рджреЗрдЦреЗрдВрдЧреЗ:

рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ - рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд▓реЙрдиреНрдЪ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрдмрдХрд┐ рд╣рдо рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рдереЗ рдФрд░ рдХрд╛рдЙрдВрдЯрд░ рдореВрд▓реНрдп рдмрдЪрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛! рдФрд░ рд╣рдо рдЕрдкрдирд╛ рджреВрд╕рд░рд╛ рдкреЗрдЬ рддрднреА рджреЗрдЦреЗрдВрдЧреЗ рдЬрдм рд╣рдо "рдмреИрдХ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рд╣рдордиреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рд╣рдо рд╕реЛрдЪреЗрдВрдЧреЗ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрд╕ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рддрдм рд╢реБрд░реВ рд╣реЛрдЧреА рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдмреИрдХ" рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдЧрд╛ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрд╕реЗ рдЗрд╕ рдмрдЯрди рдХреЛ рддреАрди рдмрд╛рд░ рджрдмрд╛рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдЗрд╕ рдмрд╛рдд рдкрд░ рдзреНрдпрд╛рди рджреЗрдВрдЧреЗ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП App Resume рдХреНрдпреЛрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдХрд┐рди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВрд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдЬреЛ рджреЗрдЦрд╛ рд╡рд╣ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рднреЛрдЬрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╣рдо рдореЗрдореЛрд░реА рдореЗрдВ рд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕рднреА рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдкреБрд░рд╛рдиреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП "рдмреИрдХ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ WP8 рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ VS2012 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрддреНрдкрдиреНрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рджреА рдЬрд╛рддреА рд╣реИрдВред App Resume рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ App Resume рд╣реИрдВрдбрд▓рд░ рдХреЗ рд╕рд╛рде рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЯрд┐рдкреНрдкрдгреА рдХреА:
RootFrame.Navigated + = CheckForResetNavigation;
рдпрджрд┐ рд╣рдо рдЗрд╕ рдкрдВрдХреНрддрд┐ рдХреЛ рдЕрдирд╕реБрдирд╛ рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЕрдм рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдирд╣реАрдВ рджреЗрдЦреЗрдВрдЧреЗред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ "рдмреИрдХ" рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдЙрд╕реА рд╕рдордп рдбреЗрдЯрд╛ рдореЗрдореЛрд░реА рдореЗрдВ рд░рд╣рддрд╛ рд╣реИред
рдЖрдЗрдП рдЗрд╕ рдкрджреНрдзрддрд┐ рдореЗрдВ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
InitializePhoneApplication рдкрджреНрдзрддрд┐ (app.xaml.cs рдлрд╝рд╛рдЗрд▓) рдХреЗ рдкрд╛рд╕ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХреА рдЧрдИ рдШрдЯрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╕рджрд╕реНрдпрддрд╛ рд╣реИ:
RootFrame.Navigated + = CheckForResetNavigation;
рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рд░реАрд╕реЗрдЯ рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
private void CheckForResetNavigation(object sender, NavigationEventArgs e) { // If the app has received a 'reset' navigation, then we need to check // on the next navigation to see if the page stack should be reset if (e.NavigationMode == NavigationMode.Reset) RootFrame.Navigated += ClearBackStackAfterReset; }
рдФрд░, рддрджрдиреБрд╕рд╛рд░, ClearBackStackAfterReset рд╡рд┐рдзрд┐ рдореЗрдВ рдЖрдЧреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рд╕рд╛рдлрд╝ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
private void ClearBackStackAfterReset(object sender, NavigationEventArgs e) { // Unregister the event so it doesn't get called again RootFrame.Navigated -= ClearBackStackAfterReset; // Only clear the stack for 'new' (forward) and 'refresh' navigations if (e.NavigationMode != NavigationMode.New && e.NavigationMode != NavigationMode.Refresh) return; // For UI consistency, clear the entire page stack while (RootFrame.RemoveBackEntry() != null) { ; // do nothing } }
рдпрд╣рд╛рдВ рдиреНрдпреВ рдФрд░ рд░рд┐рдлреНрд░реЗрд╢ рдХреА рд╕рджрд╕реНрдпрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рджреЗрдЦреЗрдВред
рдпрджрд┐ рд╣рдо рджреВрд╕рд░реЗ рдкреЗрдЬ рдкрд░ рд░рд╣рддреЗ рд╣реБрдП App Resume рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЕрдкрдиреЗ рдкреЗрдЬ рдХреА OnNavigateTo рд╡рд┐рдзрд┐ рдореЗрдВ рдПрдХ рдмреНрд░реЗрдХрдкреЙрдЗрдВрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкреЗрдЬ рдирдП рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд╡реЗрджрди рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд╕рдордп рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рдереЗ, рддреЛ рд╣рдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рд░реАрд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рд▓реМрдЯ рдЖрдПрдВрдЧреЗ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рд░реАрдлрд╝реНрд░реЗрд╢ рдХрд░реЗрдВ, рдЬреЛ рдЗрд╕ рдкрджреНрдзрддрд┐ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реИред
рдЕрдЧрд▓рд╛, рд╣рдо рдРрдк рд░реЗрдЬреНрдпреВрдореЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдкрд░рд┐рджреГрд╢реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ - рдЬрдм рд╣рдо рдЖрд╡реЗрджрди рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЪрд▓ рд░рд╣реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкрд░ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред "IOS рдпрд╛ WP8.1 рдХреА рддрд░рд╣"рдЕрдлрд╡рд╛рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдм рдореБрдЦреНрдп рдЯрд╛рдЗрд▓ рджреНрд╡рд╛рд░рд╛ WP8.1 рдХреЗ рддрд╣рдд рдЖрд╡реЗрджрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреБрдирд░рд╛рд░рдВрдн рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдмрд╣рд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рд╣рдо рдХреЗрд╡рд▓ рдмрд┐рд▓реНрдб рдХреЗ рдмрд╛рдж рд╣реА рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдмреАрдЪ, рд╣рдо рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ "рдЖрдИрдУрдПрд╕ рдореЗрдВ рдкрд╕рдВрдж" рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХрдо рд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдФрд░ рдореБрдЦреНрдп рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛, рддреЛ рдпрд╣ рдЙрд╕реА рдкреГрд╖реНрда рдкрд░ рдкрд╣реБрдВрдЪ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рдерд╛, рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреБрдирд░рд╛рд░рдВрдн рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЖрдкрдХреЛ "рдЖрдИрдУрдПрд╕ рдХреА рддрд░рд╣" рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ред рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, WP-users рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрдереНрдп рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдореБрдЦреНрдп рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреБрдирдГ рдЖрд░рдВрдн рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛрддреА рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреИрд╕реЗ рдХрд┐ рд╡рд╣ рд╕реНрдХреНрд░реАрди рдкрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╕рдордп "рдмреИрдХ" рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрд╡рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИред
рд╣рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рджреЛ рдореБрдЦреНрдп рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
1. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реИред
2. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрд╡реЗрджрди рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИ (рдкреБрд╢ рдЕрдзрд┐рд╕реВрдЪрдирд╛, рдорд╛рдзреНрдпрдорд┐рдХ рдЯрд╛рдЗрд▓, рдлреЛрдЯреЛ рд╢реЗрдпрд░, рдЖрджрд┐)
рдкрд╣рд▓реЗ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ, рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрддрд┐рд╣рд╛рд╕ рдлрд┐рд░ рд╕реЗ рдЪрд╛рд▓реВ рдХрд░реЗрдВ рдЬрдм рдРрдк рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ:
App.xaml.cs рдореЗрдВ рд╣рдо рд╕рджрд╕реНрдпрддрд╛ рдХреЛ
рдиреЗрд╡рд┐рдЧреЗрдЯ рдФрд░ CheckForResetNavigation рд╡рд┐рдзрд┐ рд╕реЗ рд╣рдЯрд╛рддреЗ рд╣реИрдВ,
рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреА рдШрдЯрдирд╛ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрддреЗ рд╣реИрдВ (рдпрд╣ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рд╣рдо рдкреГрд╖реНрда рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдХреНрд░рдордг рдХреЛ рд░рджреНрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ):
RootFrame.Navigating + = ContinueExecution;
рдЬрдм рдЖрд╡реЗрджрди рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЙрд╕ рдкрджреНрдзрддрд┐ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкрд╣рд▓реЗ рдХреЛрдИ рдЗрд╡реЗрдВрдЯ рд░реАрд╕реЗрдЯ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдкрд░ рдирдП рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдПрдХ рдШрдЯрдирд╛ред
рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдо ContinueExecution рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВрдЧреЗ:
private bool isRelaunch = false; private void ContinueExecution(object sender, NavigatingCancelEventArgs e) { if (e.NavigationMode == NavigationMode.Reset || (isRelaunch && e.NavigationMode==NavigationMode.New)) { if (isRelaunch && e.Uri.OriginalString != "/MainPage.xaml") { RootFrame.Navigated+=ClearBackStackAfterReset; return; } e.Cancel = true; isRelaunch = !isRelaunch; } }
ClearBackStackAfterReset рд╡рд┐рдзрд┐ рдирдИ WP8 рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреВрдбрд┐рдпреЛ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ рдФрд░ рдмрд╕ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рд╕рд╛рдл рдХрд░рддреА рд╣реИ:
private void ClearBackStackAfterReset(object sender, NavigationEventArgs e) { RootFrame.Navigated -= ClearBackStackAfterReset; if (e.NavigationMode != NavigationMode.New && e.NavigationMode != NavigationMode.Refresh) return; while (RootFrame.RemoveBackEntry() != null) { } }
рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкреНрд░рд╛рд░рдВрдн рдкреГрд╖реНрда рдореЗрдВ рдПрдХ рдЪреЗрдХ рд╢рд░реНрдд рдЬреЛрдбрд╝реА рдЧрдИ рд╣реИ:
if (isRelaunch && e.Uri.OriginalString != "/MainPage.xaml")
рджреНрд╡рд┐рддреАрдп рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╕рддреНрдпрд╛рдкрди рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЬрдм рд╕реЗрдХреЗрдВрдбрд░реА рдЯрд╛рдЗрд▓реНрд╕, рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдЗрддреНрдпрд╛рджрд┐ рджреНрд╡рд╛рд░рд╛ рдиреНрдпреВрдирддрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрддрд┐рд╣рд╛рд╕ рд╕рд╛рдлрд╝ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо "рдмреИрдХ" рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдВрдЧреЗред
рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреБрд╢ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рджреНрд╡рд╛рд░рд╛ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рддреЛ рдмрд╕ рд▓рд╛рдЗрди рд╣рдЯрд╛рдПрдВ
RootFrame.Navigated + = ClearBackStackAfterReset;
рдпрд╛ рдкреБрд╢ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗ рд╕рд╛рде рд▓рд┐рдВрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╢рд░реНрдд рдЬреЛрдбрд╝реЗрдВред
рджреВрд╕рд░реЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рджреВрд╕рд░реЗ рд▓рд┐рдВрдХ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдкрд░ рдПрдХ рдмрдЯрди рдЬреЛрдбрд╝реЗрдВ:
<Button Content="Secondary Tile" Click="ButtonTile_OnClick"></Button>
рдЗрд╕ рдмрдЯрди рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИрдВрдбрд▓рд░ рдЬреЛрдбрд╝реЗрдВ:
private void ButtonTile_OnClick(object sender, RoutedEventArgs e) { var secondTile = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("issecondtile")); if (secondTile == null) { var newTileData = new StandardTileData { Title = "Second Page", }; ShellTile.Create(new Uri("/SecondPage.xaml?id=someid&issecondtile=true", UriKind.Relative), newTileData); } }
рдЕрдм, рдпрджрд┐ рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рджреВрд╕рд░реЗ рдкреЗрдЬ рдкрд░ рдЬрд╛рдПрдВрдЧреЗред рдпрджрд┐ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣рдо рдЯрд╛рдЗрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд┐рдирд╛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рд╢реБрд░реВ рд╣реБрдЖ рдФрд░ рдЙрд╕реА рд╕рдордп рдпрд╣ рдореБрдЦреНрдп рдЯрд╛рдЗрд▓ рдореЗрдВ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред

рдкрд░рд┐рдгрд╛рдордРрдк рд░рд┐рдЬреНрдпреВрдореЗ рдХреА рд╕рд╛рджрдЧреА рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдХрд╛рдо рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд╛рдлреА рд╣рдж рддрдХ рд╕реНрдкрд╖реНрдЯ рдереАред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдРрдк рд░рд┐рдЬреНрдпреВрдореЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдк рди рдХреЗрд╡рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓реЙрдиреНрдЪ рдХреЛ рдЧрддрд┐ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ "рдЖрдИрдУрдПрд╕ рдореЗрдВ рднреА" рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЯрд╛рдЗрд▓ рд░рд┐рдХрд╡рд░реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЯреЙрдореНрдмрд╕реНрдЯреЛрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рднреВрд▓рдирд╛ рднреА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЗ рдкреВрд░реЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рдмрдЪрд╛рдПрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдореЗрдореЛрд░реА рдореЗрдВ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдирд╖реНрдЯ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдФрд░ рд╣рдореЗрдВ рднрдВрдбрд╛рд░рдг рд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдЙрдиреНрд╣реЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред