0

我有一个 MainPage 在屏幕的哪个部分我有一个名为 customview 的空网格,我想在其中动态添加和删除不同的视图(不同的用户控件)。现在我以这种方式将一个用户控件(view1)附加到那个空网格(MainPage的一部分):-customview是空网格,view1是我设计的用户控件,并且在导航到MainPage时我正在这样做:-

protected override void OnNavigatedTo(NavigationEventArgs e)
{
customview.Children.Clear();
View1 firstview = new View1 ();
customview.Children.Add(firstview); 
}

现在,View1(用户控件)有一个 button1,在该 button1 上单击我必须删除 view1 并将 view2(另一个用户控件)添加到 MainPage 中名为 customview 的同一个网格中。

我以这种方式尝试过,但没有运气:-

private void button1_Click_1(object sender, RoutedEventArgs e)
{
MainPage main = new MainPage();
View2 secview = new View2 ();
Grid grd = main.FindName("customview") as Grid;
grd .Children.Clear();
grd .Children.Add(secview);
}

请让我知道我在哪里做错了?提前致谢。

4

2 回答 2

0

考虑使用 ContentControl 而不是这样做。使用它,您将能够更改其内容,在任何您想要的地方添加。

将此添加到您的视图中:

            <ContentControl Name="region1ContentControl" 
                        Grid.Row="1"
                        Grid.Column="1"
                        Margin="0,10"                           
                        Style="{StaticResource ContentControlStyle}" />

等等后面的代码你就可以这样做:

region1ContentControl.Content = AnyObject(including views)

这将比一直更改视图更容易工作。

希望能帮助到你

于 2012-08-30T13:11:43.203 回答
0
Label lbl = (Label)this.Page.FindControl("controlID");
string labelText = lbl.Text;
于 2012-08-29T09:52:32.527 回答