Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
Windows Phone¿ª·¢£¨ËÄ£©-- µ¼º½Ê¼þºÍ´«Öµ
 
×÷Õߣºcc_net À´Ô´£ºCSDN ·¢²¼ÓÚ 2015-04-01
  2603  次浏览      27
 

´ÓµÚһƪ¿ªÊ¼ÎÒÃǾͿ´µ½ÁËÒ³ÃæµÄµ¼º½Çл»£¬ÉÏһƪÎÄÕÂÔò½éÉÜÁË¿ò¼ÜʵÏÖµ¼º½µÄÔ­ÀíºÍ¹ý³Ì¡£ÕæÕýµÄµ¼º½¹¦ÄÜÊÇNavigationServiceÀàÀ´ÊµÏֵġ£¶øFrameÊÇPageµÄÔØÌ壬ÊǸºÔ𵼺½£¬ÀúÊ·¼Ç¼µÈ¹¦Äܵģ¬Ï൱ÓÚÒ»¸öÖ¸»Ó¹Ù¡£Õâһƪ¾ÍÖ÷Òª½éÉÜһϵ¼º½µÄ²Ù×÷ºÍÏà¹ØµÄһЩ·½·¨¡£

Ò» µ¼º½Ê±·¢Éú´íÎó

ĬÈϵÄÎÒÃǽ¨Á¢Ò»¸öWindows Phone³ÌÐò£¬Ê¹Óõ¼º½¹¦ÄÜÊDz»»á³öÏÖÕâ¸öÎÊÌâµÄ¡£ÎÒÃÇÏÈ¿´Ò»¸öÁÐ×Ó£º

private void CompleteInitializePhoneApplication(object sender, NavigationEventArgs e)  
{
// Set the root visual to allow the application to render
if (RootVisual != RootFrame)
//RootVisual = RootFrame;
RootVisual = new MainPage();
// Remove this handler since it is no longer needed
RootFrame.Navigated -= CompleteInitializePhoneApplication;
}

ÎÒÃÇн¨Ò»¸öÏîÄ¿ºó£¬²»°ÑFrameÉèÖõ½RootVsual£¬¶øÊÇÓÃMainPage¡£ÎÒÃÇ´ÓMainpageµ¼º½µ½Page1. ʹÓÃÁ½ÖÖ·½·¨£º

private void Button_Click(object sender, RoutedEventArgs e)  
{
·½·¨1£ºthis.NavigationService.Navigate(new Uri("/Page1.xaml", UriKind.Relative));
·½·¨2£º(Application.Current as App).RootFrame.Navigate(new Uri("/Page1.xaml", UriKind.Relative));
}

µÚÒ»ÖÖ·½·¨ÊÇʹÓÃPageÒ³ÃæµÄNavigationSeviceÊôÐÔÀ´µ¼º½£¬µÚ¶þÖÖ·½·¨ÊÇʹÓÃFrame¶ÔÏóÀ´µ¼º½¡£´ÓÉÏһƪÎÒÃÇÖªµÀ£¬Á½ÖÖ·½·¨ÊÇÏàͬµÄ¡£½á¹ûÊÇʹÓõÚÒ»ÖÖ·½·¨·¢ÉúÁËNullReferenceException´íÎó£¬ÎªÊ²Ã´NavigationService¶ÔÏóÊǿգ¿ÎÒÃDz»ÊÇÔÚApp¹¹Ô캯ÊýÖоʹ´½¨¹ýNavigationServie¶ÔÏóµÄʵÀýÂ𣬲¢ÇÒÔÚ¼ÓÔØÁËXAMLÎļþºóÉèÖõ½ÁËÒÀÀµÊôÐÔÖС£

obj2.SetValue(NavigationServiceProperty, this);  

ÉÏһƪÎÄÕ½éÉܹý£¬PageµÄNavigationServiceÊôÐÔÊÇͨ¹ýÒÀÀµÊôÐÔ»ñµÃµÄ¡£ÆäʵÕâÀïÎÒÒªÁ˽âÒÀÀµÊôÐÔµÄÌØµã£¬ËäÈ»ÊÇÒ»¸östatic×Ö¶ÎÀ´Î¬»¤£¬µ«ÊÇÄÚ²¿ÊÇÓÐHash±íÀ´´æ·Å²»Í¬¶ÔÏóµÄÊôÐÔÖµ¡£ÎÒÃÇÔÚ¹¹Ô캯ÊýµÄLoad·½·¨ÖУ¬¼ÓÔØÁËÅäÖÃÎļþÖÐÖ¸¶¨µÄMainPage£¬²¢Éú³ÉÁËËûµÄʵÀý£¬È»ºóÉèÖÃÁËNavigationServiceProperty¡£¶øÕâÀïÎÒÃÇʹÓã¬MainPageµÄÊÇÒ»¸öеÄʵÀý£¬ËûµÄNavigationServicePropertyΪNull¡£ËùÒÔÕâÀﵱȻ»á±¨´íÁË¡£ ¶øÇÒNavigationServicePropertyÊÇinternalÊôÐÔ£¬ËµÒÔÎÒÃDz»ÄÜÊÖ¶¯ÉèÖÃÁË¡£

´ÓÕâ¸öÒì³£ÎÒÃÇÄÜ·¢ÏÖ£¬Ã¿´Îµ¼º½µÄеÄÒ³Ãæ£¬ÔÚ¼ÓÔØÍê³ÉPageÖ®ºó£¬¶¼»áÉèÖÃPageµÄNavigationServicePropertyµÄÊôÐÔ¡£ËùÒÔ²¢²»ÊÇ´´½¨ÁËFrame£¬ÎÒÃǾÍÄÜʹÓÃNavigationServiceÀ´µ¼º½¡£¶øÊÇÐèÒªFrameÀ´°ÉPageºÍNavigationService¹ØÁªÆðÀ´¡£¶øÕâÀÎÒÃÇnewµÄMainpageûÓÐͨ¹ýFrame¼ÓÔØÏÔʾµÄ£¬ËùÒÔÎÞ·¨µ¼º½¡£

½ÓÏÂÀ´¿´¿´µÚ¶þÖÖ·½·¨¡£ÕâÀïʹÓõÄÊÇÎÒÃÇ´´½¨µÄRootFrame¶ÔÏó£¬ÒòΪ´ËʱFrameÒѾ­ÍêÈ«¹¹ÔìºÃÁË£¬NavigationSeviceÒ²´´½¨ºÃÁË¡£ËùÒÔ´Ëʱµ÷ÓÃNavigate·½·¨ÊDz»»á±¨´íµÄ£¬¶øÇÒ·µ»ØµÄÊÇtrue¡£ÒòΪÕâÀï²»´æÔÚÑÓ³Ùµ¼º½£¬ËùÒÔ˵Ã÷ÊdzɹûÁË£¬µ«ÊÇΪʲôûÏÔÊ¾ÄØ£¿ÎÒÃǵã»÷¡¾<-¡¿Í˳ö³ÌÐò£¬µ«ÊǵãÁË2ϲÅÍ˳ö£¬Õâ˵Ã÷µ¼º½ÁËÂð£¿ÎÒÃÇÔÚ×ö¸öÊÔÑ飬ÎÒÃÇÔÚPage1ÖмÓÈëÒÔϵĴúÂë

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)  
{
base.OnNavigatedTo(e);
if (e.NavigationMode != System.Windows.Navigation.NavigationMode.Back)
{
bool ret = (Application.Current as App).RootFrame.Navigate(new Uri("/Page2.xaml", UriKind.Relative));
}
}

ÎÒÃÇÔÚ´ÓMainPageÓ÷½·¨2µ¼º½µ½Page1ºó£¬Ôڵ㡾<-¡¿Í˳ö³ÌÐò£¬ÏÖÔÚÒªµã3ÏÂÁË¡£ÎÒÃÇÒ²¿ÉÒÔÉèÖöϵãÀ´²é¿´£¬Êµ¼ÊÍê³ÉÁËMainPage->Page1->Page2µÄµ¼º½¡£µ±Ê±ÎªÊ²Ã´Ã»ÓÐÏÔÊ¾ÄØ£¿ºÜ¼òµ¥ÁË£¬ÒòΪPageҪͨ¹ýRootVisualÀ´ÏÔʾ£¬µ¼º½µÄ»°PageÐèÒªFrameÀ´¼ÓÔØµÄ£¬µ±ÎÒÃǰÑFrameÉèÖõ½RootVisualʱ£¬¾ÍÄÜÏÔʾ£¬¶øÕâÀïÎÒÃÇÉèÖõÄMainPage£¬ËäÈ»Frameµ¼º½ÁË£¬µ«Ã»Óб»ÏÔʾ³öÀ´¡£µ«ÊÇRootVisualÖ»ÄÜÉèÖÃÒ»´Î£¬ËùÒÔÕâÀïûÓа취ÈÃËûÏÔʾ³öÀ´ÁË¡£

ºÃÁË£¬µ½ÕâÀïÎÒÃǵ¼º½µÄÔ­Àí¾ÍÑо¿µ½ÕâÀͨ¹ý2¸ö´íÎóÎÒÃǽø²½²»Àí½âÁËFrameºÍPageµÄ¹ØÏµ¡£Ò²Ã÷È·ÁËFrameµ¼º½ºÍ¼ÓÔØPageµÄÕâÒ»¹¦ÄÜ¡£ÕâҲ˵Ã÷Ϊʲô±ØÐëÓÐFrame²ÅÄܵ¼º½¡£

¶þ µ¼º½µÄ¹ý³Ì

ÔÚÉÏÃæµÄÁÐ×ÓÖУ¬ÎÒÃÇ¿´µ½ÁËOnNavigatedTo·½·¨£¬µ±µ¼º½µ½Page1ʱ×Ô¶¯µ¼º½µ½ÁËPage2¡£ÎÒÃÇÖªµÀÒ»¸öPageµ¼º½µ½ÁíÒ»¸öPageʵ¼ÊÊÇÒ»¸öÐ¶ÔØºÍ×°ÔØµÄ¹ý³Ì¡£ÔÚÕâ¸ö¹ý³ÌÖлᴥ·¢Ò»ÏµÁеÄʼþºÍ·½·¨£¬ÏÂÃæÎÒÃǾÍÀ´¿´ÏÂÕâЩ·½·¨¡£

public class Page : UserControl  
{
// Methods
internal Page();
internal void InternalOnFragmentNavigation(FragmentNavigationEventArgs e);
internal virtual void InternalOnNavigatedFrom(NavigationEventArgs e);
internal virtual void InternalOnNavigatedTo(NavigationEventArgs e);
internal void InternalOnNavigatingFrom(NavigatingCancelEventArgs e);
protected virtual void OnFragmentNavigation(FragmentNavigationEventArgs e);
protected virtual void OnNavigatedFrom(NavigationEventArgs e);
protected virtual void OnNavigatedTo(NavigationEventArgs e);
protected virtual void OnNavigatingFrom(NavigatingCancelEventArgs e);
}

ÔÚPageÀàÖУ¬ÎÒÃÇ¿´µ½Á˺͵¼º½Ïà¹ØµÄ4¸öprotectedÐé·½·¨¡£¶ÔÓ¦ÓÐ4¸öinternalµÄ·½·¨£¬ËûÃÇÊÇÔÚʼþ·¢ÉúµÄʱºò´¥·¢µÄ£¨ÏµÍ³ÒѾ­¸øÎÒÃǰó¶¨ÁË£©£¬ËûÃÇʵÏֺܼòµ¥£¬¾ÍÊǵ÷ÓÃÕâÀïµÄÐé·½·¨¡£ÎÒÃÇ¿ÉÒÔͨ¹ýÖØÐ´ÕâЩÐé·½·¨À´¿ØÖÆ¡£¶øÔÚPhoneApplicationPageÀàÖÐûÓÐÖØÐ´ÕâЩ·½·¨£¬Ò²Ã»ÓмÓÈëÆäËüÏà¹ØµÄ·½·¨¡£

ÔÚÎÒÃÇDemo3µÄPhoneApp3ÖÐÎÒÃÇÔÚMainPageºÍPage1ÖØÐ´Õ⼸¸ö·½·¨£º

protected override void OnFragmentNavigation(System.Windows.Navigation.FragmentNavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnFragmentNavigation", this.ToString());
base.OnFragmentNavigation(e);
}

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
Debug.WriteLine("{0}:OnNavigatedTo", this.ToString());
base.OnNavigatedTo(e);
}

protected override void OnNavigatingFrom(System.Windows.Navigation.NavigatingCancelEventArgs e)
{
Debug.WriteLine("{0}:OnNavigatingFrom", this.ToString());
base.OnNavigatingFrom(e);
}

protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)
{
Debug.WriteLine("{0}:OnNavigatedFrom", this.ToString());
base.OnNavigatedFrom(e);
}

Æô¶¯³ÌÐò£¬´ÓMainPageµ¼º½µ½Page1: Êä³öÈçÏ£º

PhoneApp3.MainPage:OnNavigatedTo  
PhoneApp3.MainPage:OnNavigatingFrom
PhoneApp3.MainPage:OnNavigatedFrom
PhoneApp3.Page1:OnNavigatedTo

µã»÷¡¾<-¡¿°´Å¥£¬Êä³öÈçÏ£º

PhoneApp3.Page1:OnNavigatingFrom  
PhoneApp3.Page1:OnNavigatedFrom
PhoneApp3.MainPage:OnNavigatedTo

ÔÚµã»÷¡¾<-¡¿°´Å¥Í˳ö³ÌÐò£¬Êä³öÈçÏ£º

PhoneApp3.MainPage:OnNavigatingFrom  
PhoneApp3.MainPage:OnNavigatedFrom

ºÃ°É£¬ÕâЩ·½·¨µÄÖ´ÐÐ˳ÐòºÜÇå³þÁË£¬ÎҾͲ»ÓÃʲô½éÉÜÁË¡£²»Çå³þ¿ÉÒÔ¿´MSDN¡£²»¹ýÕâÀïÃüÃûºÜÈÝÒ×ÈÃÈ˲úÉúÎó½â¡£ÎÒ¿ªÊ¼¾ÍŪ·´ÁË¡£ÕâÀïToºÍFromÏà¶ÔµÄ¶ÔÏó¶¼Êǵ±Ç°µÄÒ³Ãæ¡£OnFragmentNavigation ·½·¨£¬ÔÚµ¼º½µ½°üÀ¨Æ¬¶ÏµÄͳһ×ÊÔ´±êʶ·û (URI) ʱ»á·¢Éú¡£Ò»¸öƬ¶ÏÊÇÆ¬¶Ï·Ö¸ô·û (#) ºóµÄÖµ¡£Õâ¸öºóÃæÔÚ½éÉÜ¡£

Èý Ò³Ãæ´«Öµ

ºÍWebÒ»Ñù£¬ÎÒÃÇÔÚµ¼º½¹ý³ÌÖпÉÄÜÐèÒª´«µÝÖµ£¬¶ÔÓÚWinForm³ÌÐòÀ´Ëµ£¬ÎÒÃÇ¿ÉÒÔͨ¹ýFormµÄ¹¹Ô캯Êý´«Öµ£¬¿ÉÒÔ¶¨Ò嶨ÒåÈ«¾Ö±äÁ¿µÈ¶àÖÖ·½·¨£¬¶ÔÓÚWeb£¬ÎÒÃÇ¿ÉÒÔÓÐQueryString£¬Cookies£¬SessionµÈ·½·¨£¬ÔÚÕâÀïÎÒÃÇ¿ÉÒÔÓÃÀàËÆµÄ·½·¨´«µÝ£¬ÕâÀïÎÒÃǽáºÏµ¼º½µ½¹ý³ÌÀ´½øÐÐÖµµÄ´«µÝ¡£ÕâÀïÎÒÃǵ¼º½Ê±²»ÄÜͨ¹ý¹¹Ô캯Êý´«µÝ£¬Ò²ÎÞ·¨Ê¹ÓÃCookiesºÍSession¡£

ÎÒÔÚDemo3µÄPhoneApp4ÖУ¬MainPageºÍPage1·ÅÖÃÁË5¸öTextBox£¬Ã¿¸ö¶ÔÓ¦Ò»ÖÖ´«µÝ·½Ê½£º

1 È«¾Ö±äÁ¿´«µÝ

Õâ¸ö·½·¨ÔÚWinFormºÜ³£¼û£¬ÎÒÃÇÔÚAppÀàÖж¨ÒåÒ»¸ö±äÁ¿£¬AppÊÇÒ»¸öÈ«¾Ö¶ÔÏó£¬ËùÒÔ¿ÉÒÔ¶¨ÒåÔÚÕâÀï¡£

public partial class App : Application  
{
public string StaticVar { get; set; } //È«¾Ö±äÁ¿

public PhoneApplicationFrame RootFrame { get; private set; }

public App()
{
}

ÔÚMainpageµÄOnNavigtedFrom·½·¨ÖУ¬°Ñs1µÄÖµ´«µÝ¸øÈ«¾Ö±äÁ¿£¬s1µÄÖµÀ´Ô´ÓÚTextBox1¡£µ±È»Äã¿ÉÒÔÔÚµ¼º½Ç°ÈÎÒâʱ¿Ì»ñÈ¡TextBoxµÄÖµ£¬ÕâÀïÖ»ÊÇÑÝʾµ¼º½·½·¨¡£

protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedFrom", this.ToString());
base.OnNavigatedFrom(e);
s1 = textBox1.Text;
//È«¾Ö±äÁ¿´«µÝ
(Application.Current as App).StaticVar = s1;
}

ÔÚPage1µÄOnNavigatedTo·½·¨ÖнÓÊܲ¢ÏÔʾ¡£Í¬Ñù£¬Äã¿ÉÒÔÔÚµ¼º½µ½Page1ºóµÄÈÎÒâʱ¿ÌÀ´»ñÈ¡²¢ÏÔʾ£¬ÕâÀïÒ²ÊÇΪÁËÑÚÊ½·½·¨¡£

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedTo", this.ToString());
base.OnNavigatedTo(e);
//´ÓÈ«¾Ö±äÁ¿½ÓÊÜ
s1 = (Application.Current as App).StaticVar;
textBox1.Text = s1;
}

ʹÓÃÈ«¾Ö±äÁ¿ºÜ·½±ã£¬µ«ÊÇÕ¼ÓÃÄÚ´æ¿Õ¼ä£¬²¢ÇÒ´æÔÚ¶ªÊ§µÄ¿ÉÄÜ¡£Õâ¸öÒÔºóÎļþ»á½éÉÜ¡£

2 Ò³ÃæQueryString´«Öµ

ÒòΪÕâÀïµ¼º½ºÍWebÏàËÆ£¬ËùÒÔÎÒÃÇÒ²¿ÉÒÔÓÃUriºó¼ÓÉÏQueryStringµÄ´«Öµ·½Ê½¡£ÎÒÃÇÕâÀïʹÓÃTextBox2.

Ê×ÏÈÐ޸ĵ¼º½°´Å¥´úÂ룬ÎÒÃDZØÐëÔÚµ¼º½Ç°£¬¹¹ÔìºÃµ¼º½µÄUri£¬²¢ÇÒÒª»ñÈ¡TextBox2µÄÖµ¡£QueryString¸ñʽΪ Name1=Value1&Name2=Value2£¬¶à¸ö²ÎÊýÓÃ&¼ä¸ô¿ª¡£

private void button1_Click(object sender, RoutedEventArgs e)  
{
//¹¹ÔìQueryString
s2 = textBox2.Text;
string uri = "/Page1.xaml?s2=" + s2;

//µ¼º½
this.NavigationService.Navigate(new Uri(uri, UriKind.Relative));
}

¶øÔÚPage1Ò³Ãæ£¬ÎÒÃÇͨ¹ýNavigationContextÊôÐÔµÄQueryString»ñµÃ´«µÝµÄÖµ¡£ÕâÀïÊÇ·µ»ØµÄÊÇIDictionaryÀàÐÍ£¬ÔÚʹÓÃǰ£¬±ØÐë¼ì²éName¶ÔÓ¦µÄ±äÁ¿ÊÇ·ñ´æÔÚ¡£

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedTo", this.ToString());
base.OnNavigatedTo(e);
//´ÓUri½ÓÊÜ
IDictionary<string, string> queryString = this.NavigationContext.QueryString;
if (queryString.ContainsKey("s2"))
{
s2 = queryString["s2"];
}

//ÏÔʾµ½UI
textBox2.Text = s2;
}

ʹÓÃQueryString¿ÉÒÔ´«µÝÉÙÁ¿Êý¾Ý£¬ÒòΪUri³¤¶ÈÊÇÓÐÏÞÖÆµÄ£¬²¢ÇÒÖ»ÄÜ´«µÝ¼òµ¥ÀàÐÍ£¬Èç¹ûÒª´«µÝ×Ô¶¨ÒåÀà¶ÔÏ󣬾Ͳ»ÊÊÓÃÁË¡£ÁíÍâ´«µÄÊÇstringÀàÐÍ£¬ËùÒÔ¿ÉÄÜÐèÒª½øÐÐÀàÐÍת»¯¡£ÔÚÎÒÃǵ¼º½µÄʱºò£¬»á½¨Á¢Ò»¸öJournalEntry¶ÔÏ󣬵±ÐµÄxamlÒ³Ãæ¼ÓÔØÍêºó£¬»áÈ¥½âÎöURIÖеÄQueryStringÊý¾Ý´æÈëµ½ÆäÖС£

JournalEntry.SetNavigationContext(obj2, new NavigationContext(UriParsingHelper.InternalUriParseQueryStringToDictionary

3 PhoneApplicationServiceÀà

Èç¹ûÎÒÃÇÐèÒª´«µÝ×Ô¶¨ÒåÀàÐÍÊý¾Ýʱ£¬¾ÍÐèÒªÓõ½Õâ¸ö¶ÔÏ󡣯äʵÕâ¸ö¶ÔÏóÎÒÃDz¢²»ÊǺÜİÉú£¬ÔÚÇ°ÃæÎÒÃǾͽéÉܹýËûʵÏÖÁËIApplicationService¾Í½Ó¿Ú£¬ÎªSilverlight³ÌÐò¹©ÁËÀ©Õ¹¹¦ÄÜ£¬±ÈÈçÇ°ÃæAppÖÐÆô¶¯Ê±Application_Launching£¬Application_ActivatedµÈËĸö·½·¨¡£ÔÚÕâÀïËûÔÚÄÚ²¿ÌṩÁËÒ»¸ö×ÖµäÀ´Î¬»¤Ò»Ð©È«¾ÖµÄÊý¾Ý£º

public IDictionary<string, object> State { get; }  

ËùÒÔÎÒÃDz»ÐèÒª×Ô¼ºÈ¥¶¨ÒåÈ«¾Ö±äÁ¿£¬¶ø¿ÉÒÔÖ±½ÓʹÓÃËû£¬Í¨¹ýPhoneApplicationService.Current.State¾ÍÄÜ·ÃÎʵ½Õâ¸ö×ֵ䡣ÎÒÃÇÕâÀïʹÓÃTextBox3À´ÑÝʾ¡£ÔÚMainPageÖаÑTextBox3»ñµÃµÄÖµ£¬ÉèÖõ½×ÖµäÖУ¬×¢Ò⣬ÕâÀïµÄKeyÐèÒªÊÇΨһµÄ¡£ÁíÍâÎÒÃÇʹÓÃʱҪÒýÈëÒÔÏÂÃüÃû¿Õ¼ä¡£

using Microsoft.Phone.Shell;  

protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedFrom", this.ToString());
base.OnNavigatedFrom(e);
s3 = textBox3.Text;
//ʹÓÃPhoneApplicationService´«µÝ
PhoneApplicationService.Current.State["s3"] = s3;
}

ÎÒÃÇÔÚPage1ÖУ¬ÎÒÃÇÈ¡µÃs3µÄÖµ2£¬ÕâÀïÎÒÃDzÉÓÃÁËTryGetValueÀ´»ñµÃÖµ£¬µ±È»Ò²ÄÜʹÓÃQueryStringÖеķ½·¨¡£Á½Õß¶¼ÄÜʵÏÖ¡£TryGetValueÐÔÄܸü¸ß¡£

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedTo", this.ToString());
base.OnNavigatedTo(e);
//´ÓPhoneApplicationService»ñµÃÊý¾Ý
object objS3;
PhoneApplicationService.Current.State.TryGetValue("s3", out objS3);
if (objS3 != null)
{
s3 = Convert.ToString(objS3);
}

//ÏÔʾµ½UI
textBox3.Text = s3;
}

ÕâÀïÎÒÃÇҪעÒ⣬ÕâÀïÊÇobjectÀàÐÍ£¬ËùÒÔÔÚ¶ÁÈ¡Êý¾Ýʱ£¬´æÔÚÀàÐÍת»»¡£ÁíÍ⣬ÕâÀï´«µÝµÄ¶ÔÏ󣬱ØÐëÊÇ¿ÉÒÔÐòÁл¯µÄ¶ÔÏó¡£

4 ¶ÀÁ¢´æ´¢´«µÝ

ʹÓöÀÁ¢´æ´¢IsolatedStorageSettingsÀàʱ£¬ÐèÒªÒýÓÃÒÔÏÂÃüÃû¿Õ¼ä¡£ÎÒÃÇÔÚMainPageÖÐʹÓÃËýÀ´±£´æTextBox4µÄÖµ¡£

using System.IO.IsolatedStorage;  

protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedFrom", this.ToString());
base.OnNavigatedFrom(e);
s4 = textBox4.Text;
//ʹÓöÀÁ¢´æ´¢
IsolatedStorageSettings.ApplicationSettings["s4"] = s4;
}

ÔÚPage1Ò³Ãæ£¬ÎÒÃÇ»ñÈ¡S4µÄÖµ£¬ÕâÀïÎÒÃDzÉÓÃTryGetValue<>£¬ÕâÊÇÒ»¸ö·ºÐÍ·½·¨£¬´Ó°²È«ºÍÐÔÄÜÉ϶¼±È½ÏºÃ¡£

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)  
{
Debug.WriteLine("{0}:OnNavigatedTo", this.ToString());
base.OnNavigatedTo(e);
//´Ó¶ÀÁ¢´æ´¢»ñµÃÊý¾Ý
IsolatedStorageSettings.ApplicationSettings.TryGetValue<string>("s4", out s4);
textBox4.Text = s4;
}

¿´ÆðÀ´Ò²Ã»ÓÐÊ²Ã´ÌØ±ð¡£ÎÒÃÇÔÚMainPageµÄOnNavigatedToÒ²¼ÓÈëÉÏÃæPage1ÖеĴúÂ룬ÎÒÃÇ´ÓMainPageµ¼º½µ½Page£¬ÈúóÔڹرճÌÐò£¬ÔÚÖØÐÂÆô¶¯¡£ºÙºÙ¡£¾¹È»ÔÚMainpageÖоÍÏÔʾÁËTextBox4֮ǰµÄÖµ¡£ÕâÊÇÒòΪ¶ÀÁ¢´æ´¢°ÑÖµ´æµ½Á˱¾µØ£¬ËùÒÔ¼´±ã³ÌÐò¹Ø±ÕÒ²²»»á¶ªÊ§£¬¶øÇ°ÃæÔò´æÔÚ¶ªÊ§µÄÎÊÌâ¡£¶ÔÓÚÈ«¾Ö±äÁ¿ºÍQueryString£¬¼´±ã³ÌÐò²»ÍêÈ«¹Ø±Õ£¬Ò²ÊÇ´æÔÚ¶ªÊ§µÄ¿ÉÄÜ¡£ËùÒÔÒ»°ãÀ´Ëµ£¬ÎÒÃÇʹÓÃIsolatedStorageSettingsÀ´´æ´¢³ÌÐòµÄһЩÅäÖÃÐÅÏ¢¡£µ±È»ÎÒÃÇ»¹ÄÜÑ¡ÔñFileºÍDatabaseµÈ·½Ê½À´´«µÝÊý¾Ý£¬µ±È»¶ÔÓÚÒ³Ãæ´«ÖµÀ´Ëµ¾ÍÓе㲻̫Êʺϡ£

ÒÔÉÏÊǸ÷ÖÖ·½Ê½´«ÖµµÄ½á¹û¡£

ËÄ ×ܽá

ÕâһƪÎÄÕÂÊ×ÏȼÌÐøÌ¸ÁËFrameºÍPageµÄ¹ØÏµ£¬ È»ºó½éÉÜÁËÔÚµ¼º½Ê±»á´¥·¢µÄʼþ·½·¨£¬ÎÒÃÇ¿ÉÒÔͨ¹ýÖØÐ´ÕâЩ·½·¨À´¿ØÖÆÒ³ÃæµÄÏÔʾ£¬±ÈÈç½øÐÐÖµµÄ´«µÝ¡£Ò²Ïêϸ½éÉÜÁËÖµ´«µÝµÄËÄÖÖ·½·¨ºÍʹÓõĻ·¾³¡£ÔÚÏÂһƪÎÄÕ½«¼ÌÐø½éÉܵ¼º½µÄÆäËû³£Ó÷½·¨ÒÔ¼°»ØÍ˼ü£¬»¹ÓÐÌØÊâÒ³ÃæµÄ»ØÍË´¦Àí¡£

   
2603 ´Îä¯ÀÀ       27
 
Ïà¹ØÎÄÕÂ

ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖÓë̽ÌÖ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
 
Ïà¹ØÎĵµ

Android_UI¹Ù·½Éè¼Æ½Ì³Ì
ÊÖ»ú¿ª·¢Æ½Ì¨½éÉÜ
androidÅÄÕÕ¼°ÉÏ´«¹¦ÄÜ
Android½²ÒåÖÇÄÜÊÖ»ú¿ª·¢
Ïà¹Ø¿Î³Ì

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
Androidϵͳ¿ª·¢
AndroidÓ¦Óÿª·¢
ÊÖ»úÈí¼þ²âÊÔ
×îл¼Æ»®
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢ 6-12[ÏÃÃÅ]
È˹¤ÖÇÄÜ.»úÆ÷ѧϰTensorFlow 6-22[Ö±²¥]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 6-30[±±¾©]
ǶÈëʽÈí¼þ¼Ü¹¹-¸ß¼¶Êµ¼ù 7-9[±±¾©]
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À 7-25[Î÷°²]
ͼÊý¾Ý¿âÓë֪ʶͼÆ× 8-23[±±¾©]

androidÈË»ú½çÃæÖ¸ÄÏ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
AndroidÊÖ»ú¿ª·¢£¨¶þ£©
AndroidÊÖ»ú¿ª·¢£¨Èý£©
AndroidÊÖ»ú¿ª·¢£¨ËÄ£©
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖ̽ÌÖ
ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
ÊÖ»úÈí¼þ×Ô¶¯»¯²âÊÔÑо¿±¨¸æ


Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
AndroidÓ¦Óÿª·¢
Androidϵͳ¿ª·¢
ÊÖ»úÈí¼þ²âÊÔ
ǶÈëʽÈí¼þ²âÊÔ
AndroidÈí¡¢Ó²¡¢ÔÆÕûºÏ


ÁìÏÈIT¹«Ë¾ android¿ª·¢Æ½Ì¨×î¼Ñʵ¼ù
±±¾© Android¿ª·¢¼¼Êõ½ø½×
ijÐÂÄÜÔ´ÁìÓòÆóÒµ Android¿ª·¢¼¼Êõ
ijº½Ì칫˾ Android¡¢IOSÓ¦ÓÃÈí¼þ¿ª·¢
°¢¶û¿¨ÌØ LinuxÄÚºËÇý¶¯
°¬Ä¬Éú ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
Î÷ÃÅ×Ó Ç¶Èëʽ¼Ü¹¹Éè¼Æ