加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何使Windows窗体中的MultiLine = false显示WPF TabControl(默

发布时间:2020-12-14 05:28:52 所属栏目:Windows 来源:网络整理
导读:在 Windows窗体中,TabControl的默认行为是,如果选项卡占用太多空间(MultiLine = false),则将选项卡溢出到可滚动区域. 在WPF中实现此行为的最佳方法是什么? UPDATE 我试图找到一个使用TabControl.ItemsPanel的解决方案,但似乎我放在那里的任何东西都被完全忽
在 Windows窗体中,TabControl的默认行为是,如果选项卡占用太多空间(MultiLine = false),则将选项卡溢出到可滚动区域.

在WPF中实现此行为的最佳方法是什么?

UPDATE

我试图找到一个使用TabControl.ItemsPanel的解决方案,但似乎我放在那里的任何东西都被完全忽略了,所以由于这个原因,我已经走了艰难的道路并开始使用TabControl.Template这是令人难以置信的,我们必须这样做如果结果证明这是正确的方法.

远非完整,我对问题的解决方案如下.

<TabControl>
  <TabControl.Template>
    <ControlTemplate TargetType="{x:Type TabControl}">
      <DockPanel>
        <ScrollViewer DockPanel.Dock="Top"
                      HorizontalScrollBarVisibility="Auto"
                      VerticalScrollBarVisibility="Disabled">
          <StackPanel Orientation="Horizontal" IsItemsHost="True" />
        </ScrollViewer>
        <ContentPresenter ContentSource="SelectedContent" />
      </DockPanel>
    </ControlTemplate>
  </TabControl.Template>
  <TabItem Header="One">First</TabItem>
  <TabItem Header="Two">Second</TabItem>
  <TabItem Header="Three">Third</TabItem>
  <TabItem Header="Four">Fourth</TabItem>
  <TabItem Header="Five">Fifth</TabItem>
</TabControl>

解决方法

在制作TabControl时,标签沿左侧垂直堆叠,我找到了适合您的解决方案:

http://www.blogs.intuidev.com/post/2010/02/10/TabControlStyling_PartThree.aspx

相当令人印象深刻

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读