为什么我的扩展器控件默认不在页面加载时打开?

时间:2013-08-29 22:19:49

标签: c# wpf xaml mvvm

我有一个listboxitem的组头模板,它使用绑定到带有INotifyPropertyChanged的bool IsExpanded属性的扩展器。添加了交互触发器,以便我可以立即展开和折叠列表框中的所有列表框项。

我的问题是我想要在控件打开时默认扩展组标题(目前没有)。我认为设置<Expander IsExpanded="True">会实现这一点,但它似乎对显示没有任何影响。有什么想法吗?下面的完整代码片段。

<Expander IsExpanded="True">
                    <i:Interaction.Triggers>
                        <ei:PropertyChangedTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type TabControl}}, Path=DataContext.IsExpanded, Mode=TwoWay}">
                            <ei:ChangePropertyAction PropertyName="IsExpanded" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type TabControl}}, Path=DataContext.IsExpanded, Mode=TwoWay}"/>
                        </ei:PropertyChangedTrigger>
                    </i:Interaction.Triggers>
                    <Expander.Header>
                        <TextBlock Margin="5,0,0,0"
                                   FontSize="16"
                                   FontWeight="Bold">
                            <TextBlock.Text>
                                <MultiBinding StringFormat="{}{0} ({1})">
                                    <Binding Path="Name"/>
                                    <Binding Path="ItemCount"/>
                                </MultiBinding>
                            </TextBlock.Text>
                        </TextBlock>
                    </Expander.Header>
                    <Expander.Content>
                        <ItemsPresenter/>
                    </Expander.Content>
                </Expander>

0 个答案:

没有答案