在WPF中绑定TabItem

时间:2016-11-03 08:07:03

标签: wpf binding tabs

在WPF中,可以将一个按钮绑定到命令。

<Button Command="{Binding DoSomething}">Click me!</Button>

现在我想对TabItem做同样的事情:

<TabItem Header="A little tab" ???="{Binding DoSomething}">...</TabItem>

???应该是什么?或者还有另一种方法吗?

1 个答案:

答案 0 :(得分:1)

这取决于你想要达到的目标。 TabItems具有IsSelected属性

IsSelected="{Binding IsSelected}"

可以绑定TwoWay,并且可以用来向ViewModel发送信号。

您还可以使用以下事实:您可以使用Interactivity覆盖TabItem的标头,并将其绑定到命令。

 <TabItem TabIndex="0"
                 Tag="{Binding CurrentPrinterStatus}">
            <TabItem.Header>
                <Grid Background="Transparent">
                    <i:Interaction.Triggers>
                        <i:EventTrigger EventName="MouseDown">
                            <i:InvokeCommandAction Command="{Binding DoSomething}"/>
                        </i:EventTrigger>
                    </i:Interaction.Triggers>
                    <TextBlock Style="{StaticResource TextBlockSelectedStyle}"
                           Text="Printers"/>
                </Grid>
            </TabItem.Header>

其他解决方案是使用TabControl的SelectionChanged事件,这可以让您找到当前所选TabItem的ViewModel。

希望这个想法至少可以帮助您解决问题。

相关问题