【问题标题】:TabControl customizationTabControl 自定义
【发布时间】:2014-04-01 13:47:02
【问题描述】:

如何自定义 TabControl? TextBox 应向右对齐,并且应与选项卡项位于同一行。 TextBox也是每个选项卡项内容的过滤器,它应该在选项卡切换期间保存其状态(例如,如果我们在选择TabItem1时在TextBox中输入“123”,那么我们选择TabItem2并输入“abc”,现在当我们再次选择 TabItem1,TextBox 应该包含“123”)。 或者这种情况下最好不要使用 TabControl 元素?

【问题讨论】:

  • 如果过滤器是特定于标签的,那么为什么不把它放在标签中呢?
  • 不幸的是,有这样的设计是必需的。
  • 让我猜猜?最终用户正在做 UI 设计。
  • 客户想要这个 UI。他提供了一个模型,我应该实现它。

标签: c# .net wpf xaml tabcontrol


【解决方案1】:

这是一个开始

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <TextBox Grid.Row="1" Grid.Column="1" Text="TextBox"/>
    <TabControl Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Grid.RowSpan="2">
        <TabItem Header="Tab Item 2"/>
        <TabItem Header="Tab Item 2"/>
    </TabControl>
</Grid>

但是当您缩小窗口并且选项卡标题覆盖文本框时,您将遇到严重的问题。

您将需要构建自定义选项卡控件或修改现有的。

这种 UI 设计难以实现,因为无法使用标准控件。
希望这是按小时计算的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多