台灣最大程式設計社群網站
線上人數
1211
 
會員總數:239604
討論主題:185880
歡迎您免費加入會員
討論區列表 >> Windows Phone APP >> 如何透過Navigation傳送資料(Loop)
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
如何透過Navigation傳送資料(Loop)
價值 : 0 QP  點閱數:1609 回應數:2

樓主

吳翊豪
門外漢
0 3
67 3
發送站內信

現在有一個裝置透過TCP/IP方式持續性送出隨機Data 並由WindowPhone客戶端編碼接收
最後將處理過的資料從Page1傳到Page2上面顯示(持續性)
如果使用NavigationService.Navigate(new Uri("/Page2.xaml?Data=sun", UriKind.Relative))放在接收資料的Loop中;
便無法回到Page1頁面,Page2也無法隨著接收時跟著改變畫面的顯示
像這樣的狀況,該如何排除呢?

搜尋相關Tags的文章: [ TCP/IP ] , [ Navigation ] , [ Loop ] ,
本篇文章發表於2012-04-28 00:10
== 簽名檔 ==
懂,不懂  取決於你的態度
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

jonnyhuang
檢舉此回應
您的說明有點模糊,
當您使用 NavigationService.Navigate 去呼叫 Page2 時,
Page1 會中止目前的運作,而系統會切換去執行 Page2 的程式,
所以將 NavigationService.Navigate 拿到 Loop 並不會持續執行,只會跑一次,

如果您持續性的接收資料,可以建立一個背景執行序來接收資料,

或者您可以直接將 Page2 嵌入在 Page1 內,
(可以改成 UserControl 或是建一個 Penal 把 Page2 控制項都放在裡面)
預設 Visibility 改成 Collapsed (隱藏),
然後在你需要顯示的時候把 Visibility 改成 Visible (顯示)。
本篇文章回覆於2012-04-30 12:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

吳翊豪
檢舉此回應
原來Page1在經由NavigationService會停止操作阿...難怪怎麼想都不懂

聽了Jonny的建議,讓程式透過背景來執行Loop就成功了

第二種方式把兩頁當成一頁用的作法很棒,但是做出來和我預期的效果有些出入,所以就決定採用第一種了

看來還得繼續磨練基本功...
本篇文章回覆於2012-05-03 02:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.