2011-11-30 141 views
0

我是新來的Windows Phone 7渲染用戶控制7

我要問您的幫助一些代碼:

  1. 林開發和應用程序,它有多個頁面。現在我想用一些用戶控件將它放到一個頁面中。例如,我的主頁將在網格中有一個公司徽標,而第二個網格是空的。第二個網格應顯示用戶控件,我要求用戶登錄,登錄後我想爲某個列表框和全部顯示另一個用戶控件。麻煩是我沒有得到如何顯示和更改頁面中的用戶控制?就像在asp.net MVC中的部分頁面一樣。

  2. 是否有任何函數在每次用戶控件更改時都會執行,就像asp.net MVC中的「OnActionExecuting」一樣。我們可以創建一個UserControl作爲BaseUserControl並從它繼承每個UserControl ...是否有可能?

對不起,我對這個Windows手機很新。

回答

1

我會盡力給你一些提示和代碼來管理你的問題。 首先。可以做所有你想要的;)。 如果你只想使用一個頁面(可能不是最佳實踐),你可以從代碼中改變你的UI。如果在MainGrid中有您的Page,MainGrid和兩個Grids。您可以使用x:name屬性訪問每個網格,您已在xaml中設置該屬性。 例子:

<Grid x:name="MainGrid"> 
    <Grid x:Name="LogoGrid"/> 
    <Grid x:Name="ContentGrid"/> 
</Grid> 

在這裏,您可以將您的用戶控件如下:

var control = new CustomUserControl(); 
ContentGrid.Children.Clear(); //maybe delete old Children 
ContentGrid.Children.Add(control); 

處理事件也很容易。只需將它構建到UserControl中,就​​像LoginButton一樣,並在ButtonClick之後用新的UserControl替換舊的UserControl。

1

您可以簡單地通過將用戶控件作爲child添加到容器Grid來更改用戶控件。

MyUserControl myusercontrol = new MyUserControl(); 
mygrid.Children.Add(myusercontrol); 

或刪除,

mygrid.Children.RemoveAt(0); //if you have just one child control.