命令触发UserControl chane

时间:2018-06-06 13:42:37

标签: c# .net wpf mvvm

我是WPF的新手。我想用侧边栏构建一个单窗口应用程序。目前我正在尝试将侧边栏绑定到具有Name,Icon和ICommand的对象列表。

class Activity
{

    public string Name { get; set; }

    public string Icon { get; set; }

    public ICommand Command { get; set; }

}

命令可以执行各种操作,例如关闭应用程序。其中一些应该替换窗口中的用户控件。我怎样才能实现这个目标呢?

这是我的MainWIndow XAML:

    <!-- Content -->
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="100" />
            <ColumnDefinition Width="3" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

        <!-- Sidebar -->
        <ItemsControl ScrollViewer.VerticalScrollBarVisibility="Auto" DockPanel.Dock="Left" Name="sidebarItems">
            <ItemsControl.ItemTemplate>
                <DataTemplate>
                    <Button Margin="10" Command="{Binding Path=Command}">
                        <StackPanel Orientation="Horizontal">
                            <Image Source="{Binding Icon}" Height="25" Width="25" />
                            <TextBlock Text="{Binding Name}"/>
                        </StackPanel>
                    </Button>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>

        <!-- Splitter -->
        <GridSplitter Grid.Column="1" Width="3" HorizontalAlignment="Stretch" />

        <!-- Content -->
        <Grid  Grid.Column="2" Name="ContentUserControl" Background="Gray">

        </Grid>

    </Grid>

0 个答案:

没有答案