2013-08-01 42 views
2

我想製作一個xamlpage(或只有xaml),其中包含xaml控件。而且我想在Windows 8應用程序的多個頁面中使用它,任何想法都是值得讚賞的。Windows Store應用中所有頁面的常見Xaml

+0

嘗試用戶控件 –

+0

要共享什麼樣的控件? –

+0

@arun在用戶控制的情況下,我必須在每個頁面上定義它..但我真的不希望這樣。我希望它像一個通知,所以每當一些更新發生它只是在圖片無論頁面是什麼.. – loop

回答

2

這裏的一個很好的起點是查看標準Grid應用程序模板中的LayoutAwarePage類。這個類是Page類型的一個子類,包含很多標準功能(例如處理方向更改)

如果您創建類似於LayoutAwarePage的東西,那麼您可以在其中具有一組標準功能,您可以在其中重複使用你的應用。但請注意,爲了使其工作,您可能需要在每個實際派生頁面上添加更多邏輯。另外,你想在這些頁面上繪製的UI需要在C#中明確編碼,因爲沒有關聯的XAML與這個類。

1

就可以開始這樣的事情....這裏是你的子類,

 public sealed partial class ChildClass: ApplicationPageBase  
     { 
      private void OnSomeEvent(object sender, TextChangedEventArgs e) 
      { 
       base.IspopOpen = true; 
      } 
     } 

Base類將這個樣子

 public abstract class ApplicationPageBase : Page 
     { 
      private Popup settingsPopup; 
      private bool _IsPopOpen; 
      public bool IspopOpen { get;set; } 
      public ApplicationPageBase() 
      { 
       InitiatePopUp(); 
      } 
      void InitiatePopUp() 
      { 
       settingsPopup = new Popup(); 
       //do some code for popup 
      } 
     } 

注:這只是一個變通

+0

這個Applicationbase類可以有關聯的xaml..like我說的是頁面..我可以直接繼承頁面.. – loop

+0

是的,你可以不幸:)添加xaml作爲ControlTemplate到Application.Resources中的app.xaml,然後你可以在基本頁面中訪問它: Template =(ControlTemplate)Windows.UI.Xaml.Application.Current.Resources [「GlobalControlKey」] –

+0

謝謝..你的答案是有幫助的。我發現我需要一些休息..:D – loop

相關問題