wpf Ribbon dataTemplating

时间:2014-04-14 08:38:29

标签: c# wpf mvvm bind ribbon

我是WPF的新手,所以也许我不能正确理解MVVM。我使用Microsoft Ribbon,我需要制作一个带有动态标签的功能区,它会绑定到我的viewModel。我是这样做的:

<Ribbon Grid.Row="1" ItemsSource="{Binding AvaliablePlugins}">
        <Ribbon.ApplicationMenu>
            <RibbonApplicationMenu SmallImageSource="Images\gear_32.png" KeyTip="F">
                <RibbonApplicationMenuItem Header="Exit" ImageSource="Images\stop_32.png" Command="{Binding CloseCommand}" />
                <RibbonApplicationMenuItem Header ="About" ImageSource="Images\bookmark.png" Click="ShowAbout"></RibbonApplicationMenuItem>
            </RibbonApplicationMenu>
        </Ribbon.ApplicationMenu>
        <Ribbon.ItemTemplate>
            <DataTemplate>
                <RibbonTab >
                    <RibbonTabHeader>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="24" />
                                <ColumnDefinition Width="24" />
                                <ColumnDefinition Width="Auto" />
                            </Grid.ColumnDefinitions>
                            <Button Content="X" Click="ClosePlagin"></Button>
                            <Image Source="{Binding SmallImageSource}" Stretch="UniformToFill" Grid.Column="1" ></Image>
                            <TextBlock Text="{Binding Name}" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                        </Grid>
                    </RibbonTabHeader>
                </RibbonTab>
            </DataTemplate>
        </Ribbon.ItemTemplate>

这样的绑定对tabControl工作正常,我无法让它适用于wpf功能区。此外,我将需要将动态ribbonButtons绑定到选项卡,我不知道如何处理它。 Myabe我必须以某种方式存储VM中的所有功能区部件(选项卡,组,按钮)?我也找不到关于WPF 4.5 Ribbon的好样本。 而且,也许最好选择第三方功能区控件,比如telerik或syncfusion?到目前为止,微软解决方案并没有让我感到高兴。

我会感激任何帮助!

0 个答案:

没有答案