2015-04-22 70 views
0

任何人都可以使用這個通用應用程序來幫助我使用xaml和C#中的Windows 8.1嗎?我試圖尋找這個問題的答案,但我能找到的是沒有好的方法來做到這一點。如果沒有好的方法將對象從一個頁面傳遞到另一個頁面,我想聽聽我有什麼其他選項。如何在兩個不同的xaml頁面上操作一個對象(將對象從一個xaml頁面發送到另一個)

在我的主頁中,我製作了兩個對象列表,我通過閱讀文件製作了這些對象。 我想在我的大多數其他頁面中使用這些對象,但我無法找到如何操作這些對象列表而不使其成爲全局對象(我聽說這不是一個理想的事情)。

具體我想要完成的任務: 我想提出一個d & d的應用程序,並創建了包含了像名字的東西對象「怪物」的列表時,按點攻擊等。而且我已經創建了一個名爲「武器」的物品列表,其中包含名稱,傷害等物品。 現在我想在我的主頁上顯示怪物的名稱和生命值,當我點擊這個怪物時,我想創建一個新頁面顯示有關此對象(怪物)的所有信息。如果我在一頁上改變「生命值」值(如果這個怪物受到傷害),另一頁也應該用相同的信息更新。

現在我想將這些列表傳遞給下一頁,這應該可以解決我的問題,但是我還沒有設法找到這樣做的方法。我只設法從一個頁面傳遞一個簡單的字符串到另一個頁面。

//這是從主菜單中創建我的對象列表,當我按下按鈕時,我應該轉到下一頁。

private void ButtonShowMonster_Click(object sender, RoutedEventArgs e) 
     {    
if (this.Frame != null) 
      { 

this.Frame.Navigate(typeof(OneMonsterPage)); 
      } 
     } 

編輯1:是通過創建一個全局列表對象的最好方法嗎?

回答

2

最簡單的方法是創建一個「global-ish」對象列表,例如App對象的屬性,或者包含值的static類或單例對象。這通常稱爲您的應用程序的「模型」。然後,您可以訪問不同頁面中的數據,並且可以(例如)簡單地在頁面之間傳遞所選對象的索引,並使用帶有額外參數的Navigate重載。

一般來說,您應該對MVVM pattern進行一些關於應用程序設計的研究。

相關問題