Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# XAML运行时用户控件绑定_C#_Silverlight_Xaml_User Controls - Fatal编程技术网

C# XAML运行时用户控件绑定

C# XAML运行时用户控件绑定,c#,silverlight,xaml,user-controls,C#,Silverlight,Xaml,User Controls,一段时间以来,我一直在关注这个问题: 我正在开发windows phone应用程序: 我有一个XAML页面作为模板和三个用户控件: private void Button_Click(object sender, RoutedEventArgs e) { ctrl1.Visibility = Visibility.Visible; ctrl2.Visibility = Visibility.Collapsed; ctrl3.Visibility = Visibility.

一段时间以来,我一直在关注这个问题: 我正在开发windows phone应用程序: 我有一个XAML页面作为模板和三个用户控件:

private void Button_Click(object sender, RoutedEventArgs e)
{
    ctrl1.Visibility = Visibility.Visible;
    ctrl2.Visibility = Visibility.Collapsed;
    ctrl3.Visibility = Visibility.Collapsed;
}

private void Button_Click_1(object sender, RoutedEventArgs e)
{
    ctrl2.Visibility = Visibility.Visible;
    ctrl1.Visibility = Visibility.Collapsed;
    ctrl3.Visibility = Visibility.Collapsed;
}

private void Button_Click_2(object sender, RoutedEventArgs e)
{
    ctrl3.Visibility = Visibility.Visible;
    ctrl1.Visibility = Visibility.Collapsed;
    ctrl2.Visibility = Visibility.Collapsed;
}
其中一个有地图布局,一个generalInfo布局,Summary+Pic布局

我想在顶部创建3个按钮,并分别更改活动的UserControl

我不想让你使用数据透视页


帮忙?劝告代码?

一种非常原始的方法是订阅所有3个按钮的Click事件,基本上只需在事件处理程序中适当更改UserControls的Visibility属性

<>当然还有其他的方法,比如使用MVVM模式或者使用SDK中的TabFor和TabIt,如果可以使用WP7或者使用事件触发器,但是这可能是一个很好的起点。 您的主页应该如下所示:

<UserControl x:Class="SilverlightApplication10.MainPage"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:silverlightApplication10="clr-namespace:SilverlightApplication10"
             mc:Ignorable="d"
             d:DesignHeight="300"
             d:DesignWidth="400">

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="30" />
            <RowDefinition />
        </Grid.RowDefinitions>

        <StackPanel x:Name="LayoutRoot"
                    Orientation="Horizontal"
                    Background="White">

            <Button Height="30"
                    Content="content1"
                    Click="Button_Click" />

            <Button Height="30"
                    Content="content2"
                    Click="Button_Click_1" />

            <Button Height="30"
                    Content="content3"
                    Click="Button_Click_2" />

        </StackPanel>

        <Grid Grid.Row="1">
            <silverlightApplication10:SilverlightControl1 x:Name="ctrl1"
                                                          Visibility="Collapsed" />

            <silverlightApplication10:SilverlightControl2 x:Name="ctrl2"
                                                          Visibility="Collapsed" />

            <silverlightApplication10:SilverlightControl3 x:Name="ctrl3"
                                                          Visibility="Collapsed" />
        </Grid>

    </Grid>
</UserControl>