2011-11-30 92 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.