2014-07-07 60 views
0

以前我試圖在這個主題上挖掘一些東西,但沒有運氣。我試圖實現的很簡單,但似乎很難實現:-)在C#WP8中創建和使用全局視圖XAML

我有一個WP8應用程序(C#XAML),我需要實現可以顯示的全局消息(類似敬酒)無論當前導航過程如何,都可以跨越整個應用程即使用戶在頁面之間導航,也應該顯示這樣的Toast消息。使用內置的吐司不是一種方法(以防其他解決方案存在),因爲我可能需要同時顯示多條消息(每個消息獨立於另一個消息),並應在指定的時間段後消失的時間。

所以,我的問題是。有沒有辦法如何實現和使用某種全局視圖實例,它位於所有頁面之上並且可以從任何頁面調用?

我到目前爲止發現的所有可能的功能都是使用PhoneApplicationFrame,但我希望儘可能避免這種情況。我仍然不確定這是否可以完成,但我想是這樣。你有任何替代品或保證這是可能的,只有這樣才能實現這一目標?

謝謝大家的時間和答案。

回答

0

對於您正在查找的功能,您可以有UerControl。它是Control擁有自己的Seprate Xamlcs文件。你可以從任何頁面調用它到你的項目中。 UserControl提供了用於定義封裝相關現有控件並提供其自身邏輯的新控件的基類。你有一個用戶控件的XAML文件和C#類文件。該類文件擴展了UserControl類並添加了其他行爲和屬性。 XAML文件封裝了組成控件,樣式,模板,動畫以及構成UI所需的任何內容。由於它是一個公正的作品,所以創作起來非常簡單。更多參考你可以去這裏Why and how to create a User Control in Windows Phone

+0

你好,問題是這不能解決問題。用戶控件可以在頁面中調用。如果我錯過了在每個頁面上創建新實例的需要,那麼它不符合我的需求,因爲一旦頁面被留下,對象就會被銷燬,因此隊列中的所有消息和可能的消息也都消失了。這就是爲什麼我需要知道是否有辦法使其成爲全球性的,所以在所有頁面上說,作爲應用程序的一部分。無論如何,謝謝你的努力。 –

+0

你可以嘗試彈出,可以在APP.xaml.cs中聲明,並可以調用到所有頁面,檢查它是否可以滿足您的要求 –

+0

將檢查。謝謝。 –

0

我已經結束了使用單個母版頁滾動我自己的自定義導航。因此,任何全局控件都會在啓動時實例化一次。導航是從我的視圖模型中調用的,並導致usercontrols被刪除並根據需要添加到可視化樹中(使用過渡動畫給出頁面導航的印象)這可行但我不確定這是否是最佳實踐,並會欣賞一些意見和評論在這。當然,它解決了所描述的全局觀點的問題。