【问题标题】:WPF Tabcontrol not showing TabItem content until selection changesWPF Tabcontrol 在选择更改之前不显示 TabItem 内容
【发布时间】:2014-04-07 23:42:20
【问题描述】:

我有以下 Tabcontrol 定义:

    <TabControl Grid.Row="0" SelectedItem="{Binding SelectedTab}" >
        <TabItem Header="Foo" IsSelected="True" >
            One
        </TabItem>
        <TabItem Header="Bar">
            Two
        </TabItem>
        <TabItem Header="Smeh">
            Three
        </TabItem>
    </TabControl>

我希望选择“Foo”选项卡并且“One”文本可见。这不是我看到的行为。似乎所有选项卡都未选中,直到我单击另一个选项卡(单击应该已选中的选项卡什么也不做),然后该选项卡看起来已选中并显示内容。

有谁知道为什么 TabControl 会这样工作以及如何修复它以使其正常工作?

【问题讨论】:

  • 顺便说一句,我在应用程序的任何地方都没有样式或主题。
  • 绑定是干什么用的?
  • 绑定是为了让我可以访问模型中选定的选项卡。每个选项卡都是一组不同的报告参数,每个选项卡都有自己的模型,用于收集参数并收集报告数据。父模型(tabcontrol 所在的位置)简单地获取从 tabItem 模型返回的数据集并填充 ReportViewer 控件。

标签: wpf


【解决方案1】:

默认情况下,TabControl 中没有选定项。如果您想将某些模型与所选项目同步,请尝试

 <TabControl Grid.Row="0" SelectedItem="{Binding SelectedTab, Mode=OneWayToSource}" >

【讨论】:

  • 这不是和我的示例代码几乎一样(除了 onewaytosource,除了性能之外应该没有区别)吗?
  • 不,OneWayToSource 使 XAML 默认值胜过来自模型的值(默认为 null)。
猜你喜欢
  • 2015-12-07
  • 2011-04-04
  • 2016-02-20
  • 2013-03-03
  • 1970-01-01
  • 2012-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多