WPF Tabcontrol 获取最大选项卡的大小

2024-02-26

我有一个绑定到 Viewmodel 集合的 TabControl,这些 Viewmodel 被转换为适当的值以绘制到选项卡中:

<Window.Resources>
    <ResourceDictionary>
        <DataTemplate DataType="{x:Type charting:LineFormatViewModel}">
            <charting:LineFormatView />
        </DataTemplate>
        <DataTemplate DataType="{x:Type charting:IndexSettingsViewModel}">
            <charting:IndexSettingsView />
        </DataTemplate>
        ....
    </ResourceDictionary>
</Window.Resources>

<TabControl ItemSource="Binding ViewModels" />

我一直在尝试找到一种方法来始终以它的任何子项的最大宽度和高度绘制 TabControl。让 WPF Tabcontrol 高度假定最大项目的高度? https://stackoverflow.com/questions/1073770/let-wpf-tabcontrol-height-assume-height-of-largest-item在答案中提到了实现这一目标的几种方法(根据我的理解):

  • 使用 Grid 和 SharedSizeGroup - 似乎需要应用于 TabControl 实际内容上的 DataTemplate,这会覆盖通过在资源字典中创建的 VM->View 映射实现的自动视图绘制
  • 使用宽度/高度转换器,这需要将我的 TabControl 绑定到 UI 元素集合而不是视图模型

有没有人有解决类似问题的经验?每当我在这方面取得一些进展时,我似乎都会遇到更多的困难。


您需要使用可以自动适应的命名隐藏控件 创建对其宽度/高度的直接绑定,如下所示:

 Width="{Binding ActualWidth, ElementName=MainGrid}"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF Tabcontrol 获取最大选项卡的大小 的相关文章

  • 与 for_each 或 std::transform 一起使用时,如何调用 C++ 函子构造函数

    我以前从未使用过 C 函子 所以我只是想了解它们是如何工作的 例如假设我们有这个函子类 class MultiplyBy private int factor public MultiplyBy int x factor x int ope
  • C# SmtpClient编程中如何设置带有中文的附件文件名?

    我的代码如下 ContentType ct new ContentType ct MediaType MediaTypeNames Application Octet ct Name 这是一个很长的中文文件名希望能用它在附件名中 Doc A
  • 无法继承形状

    为什么我不能使用继承 a 的类Shapes class http msdn microsoft com en us library ms604615 28v vs 90 29 我需要延长Rectangle具有一些方法的类 但我想以与使用相同
  • strlen() 编译时优化

    前几天我发现你可以找到编译时strlen使用这样的东西 template
  • 2个对象,完全相同(除了命名空间)c#

    我正在使用第三方的一组网络服务 但遇到了一个小障碍 在我手动创建将每个属性从源复制到目标的方法之前 我想我应该在这里寻求更好的解决方案 我有 2 个对象 一个是 Customer CustomerParty 类型 另一个是 Appointm
  • 如何向 Mono.ZeroConf 注册服务?

    我正在尝试测试 ZeroConf 示例http www mono project com Mono Zeroconf http www mono project com Mono Zeroconf 我正在运行 OpenSuse 11 和 M
  • 为什么这个 makefile 在“make clean”上执行目标

    这是我当前的 makefile CXX g CXXFLAGS Wall O3 LDFLAGS TARGET testcpp SRCS main cpp object cpp foo cpp OBJS SRCS cpp o DEPS SRCS
  • C# 根据当前日期传递日期时间值

    我正在尝试根据 sql server 中的两个日期获取记录 Select from table where CreatedDate between StartDate and EndDate我通过了5 12 2010 and 5 12 20
  • LinkLabel 无下划线 - Compact Framework

    我正在使用 Microsoft Compact Framework 开发 Windows CE 应用程序 我必须使用 LinkLabel 它必须是白色且没有下划线 因此 在设计器中 我将字体颜色修改为白色 并在字体对话框中取消选中 下划线
  • 如何在 Javascript 中连接 C# ActiveX 事件处理程序

    我尝试使用几个代码片段将 ActiveX 对象与 Javascript 事件处理程序挂钩 我无法确定为什么事件处理程序没有被调用 带有项目的 Github 存储库 https github com JesseKPhillips Csharp
  • 如何防止 Blazor NavLink 组件的默认导航

    从 Blazor 3 1 Preview 2 开始 应该可以防止默认导航行为 https devblogs microsoft com aspnet asp net core updates in net core 3 1 preview
  • 如何在多线程应用程序中安全地填充数据并 Refresh() DataGridView?

    我的应用程序有一个 DataGridView 对象和一个 MousePos 类型的列表 MousePos 是一个自定义类 它保存鼠标 X Y 坐标 类型为 Point 和该位置的运行计数 我有一个线程 System Timers Timer
  • MySQL 连接器 C++ 64 位在 Visual Studio 2012 中从源代码构建

    我正在尝试建立mySQL 连接器 C 从源头在视觉工作室2012为了64 bit建筑学 我知道这取决于一些boost头文件和C 连接器 跑步CMake生成一个项目文件 但该项目文件无法编译 因为有一大堆非常令人困惑的错误 这些错误可能与包含
  • ASP.NET Core 中间件与过滤器

    在阅读了 ASP NET Core 中间件之后 我对何时应该使用过滤器以及何时应该使用中间件感到困惑 因为它们似乎实现了相同的目标 什么时候应该使用中间件而不是过滤器 9频道有一个关于此的视频 ASP NET 怪物 91 中间件与过滤器 h
  • C++ 指针引用混淆

    struct leaf int data leaf l leaf r struct leaf p void tree findparent int n int found leaf parent 这是 BST 的一段代码 我想问一下 为什么
  • 如何编写一个接受 int 或 float 的 C 函数?

    我想用 C 语言创建一个扩展 Python 的函数 该函数可以接受 float 或 int 类型的输入 所以基本上 我想要f 5 and f 5 5 成为可接受的输入 我认为我不能使用if PyArg ParseTuple args i v
  • 在 C# 的 WebAPI 中的 ApiController 上使用“传输编码:分块”提供数据

    我需要服务分块传输使用编码数据API控制器 因为我无权访问HttpContext or the Http请求 我有点不知道在哪里写入响应以及在哪里刷新它 设置如下 public class MyController ApiControlle
  • winform c# 中的弹出窗口

    我正在开发一个需要弹出窗口的项目 但问题是我还希望能够通过表单设计器在此弹出窗口中添加文本框等 所以基本上我有一个按钮 当您单击它时 它将打开我在表单设计器中设计的另一个窗口 我一直在谷歌搜索 但还没有找到我需要的东西 所以我希望你们能帮助
  • 从后面的代码添加外部 css 文件

    我有一个 CSS 文件 例如 SomeStyle css 我是否可以将此样式表文档从其代码隐藏应用到 aspx 页面 您可以将文字控件添加到标头控件中 Page Header Controls Add new System Web UI L
  • 声明一个负长度的数组

    当创建负长度数组时 C 中会发生什么 例如 int n 35 int testArray n for int i 0 i lt 10 i testArray i i 1 这段代码将编译 并且启用 Wall 时不会出现警告 并且似乎您可以分配

随机推荐

  • 将 WPF 用户控件选择传递给主机控件

    我有一个带有列表框的 WPF 用户控件 我想通过绑定将列表框中的选定项传递给调用控件 我怎样才能实现这个目标 您可以在用户控件上公开 SelectedItem 的新属性 并将其绑定到子控件 ListBox 用户控件的代码 不过我是从 Con
  • 自定义函数类

    我正在开发一个涉及从其他函数构造函数的项目 我有编写一个类来简化事情的想法 但如果不求助于使用我就无法让它工作 proto 这基本上就是我的愿景 function MyFunction var myFn new MyFunction myF
  • Express.js + lint 给出错误

    https www youtube com watch v Fa4cRMaTDUI https www youtube com watch v Fa4cRMaTDUI我正在观看这节课 并试图重现作者所做的一切 19 00 他设置了 vue
  • 特定模型的 Django 管理自定义模板

    我正在尝试在 Django 管理中为特定模型添加自定义模板 基本上我想在 Django admin 中显示地址模型的 Google 地图 那么对此有什么帮助吗 FineManual tm 对此进行了全面介绍 因此请先阅读此内容 检查这个网址
  • 将字段更改为ManyToMany时Django数据迁移

    我有一个 Django 应用程序 我想将字段从foreignkey更改为ManyToManyField 我想保留我的旧数据 为此 最简单 最好的流程是什么 如果重要的话 我使用 sqlite3 作为我的数据库后端 如果我对问题的总结不清楚
  • SQL/SQL-LITE - 过滤后计算记录

    假设我有一个客户表和一个销售订单表 其架构如下 客户 id 姓名 销售订单 id customer id sales representer 具有以下定义 id 是两个表中的主键 customer id 是外键引用客户 我想实现以下查询 F
  • Python 对 Windows 8 的支持 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 重用存储是否会开始新对象的生命周期? [复制]

    这个问题在这里已经有答案了 include
  • Rails:如何使用 before_save 更改基于另一个字段的字段值?

    我试图根据另一个布尔字段的值将一个布尔字段设置为 false 我使用 ActiveRecord 模型尝试了以下操作 before save reconcile xvent def reconcile xvent self xvent hoo
  • 网络错误:405 方法不允许 AngularJS REST

    在 AngularJS 中 我有以下功能 运行良好 http get fruits json success scope handleLoaded 现在我想将其从文件更改为 url 使用一些可爱的 Laravel 4 返回 json htt
  • 在 AngularJS 中,如何获取作为 URL 一部分的 ID?我正在使用 Restangular 与 REST API 进行通信

    我正在使用 Restangular 进行后端调用 只要 URL 提供如下所示的数据 一切都会正常工作 如果我打http mysite responses 回复看起来像 fname some guy lname some name dob 2
  • 如何访问 boost::spirit::karma 中嵌套对象的数据?

    In an ItemList包含列表Item对象 我如何访问Item生成器中的对象 以下示例代码在 VC9 上编译 适当设置了 boost 包含和链接目录 我不知道如何设置list generator item include
  • `y = x = x + 1;` 是未定义的行为吗?

    这段代码是 y x x 1 C 中未定义的行为 回答你的问题 No 会发生什么这将会发生 int x 1 ASSUME THIS IS SO y x x 1 Results y 2 x 2 它是如何编译的与以下相同 x 1 y x 为什么这
  • pch 上的 #import 是否会减慢编译时间?

    我正在读这个post http qualitycoding org import order 关于进口 我有一个问题 默认情况下 prefix pch 文件中的 import 是否会减慢编译时间 我应该删除它并仅在必要时导入吗 ifdef
  • 在 NestJS 中使用与 GraphQL 中的输入和对象类型相同的类

    我正在尝试设置我的 graphql resover 来处理对象数组 但无法配置 Args 装饰器 我创建了自己的 ArgsType import ArgsType Field Int ObjectType from nestjs graph
  • 从 github 中删除文件

    我已经在一个项目中使用 github 一段时间了 但是仅作为问题跟踪器 因此 今晚我也花了一些时间来处理代码 并犯了一个菜鸟错误 我提交了凭证文件和其他不必要的数据 我已将它们添加到 gitignore现在提交文件 它们应该不再是问题 但我
  • Docker:如何 Dockerize 并部署 LAMP 应用程序的多个实例

    我需要部署同一 LAMP 或 LEMP 应用程序的多个实例 每个实例都可以通过前端负载均衡器 代理从子域访问 每个实例必须有自己的数据库数据和文件数据 每个实例都可能受到监视 内存限制 CPU 可能会针对每个应用程序实例进行设置 轻松自动部
  • 从 Oracle 存储过程调用 os_command.exec

    我用过os command exec向 Linux shell 发送命令 我正在使用 Oracle 12c 这是一个运行良好的示例代码 select os command exec home smucha app smucha produc
  • Python 3 查找字符串中的最后一个数字

    如何找到任何大字符串中的最后一个数字 例如 在以下字符串中 我想要 47 作为输出 tr bgcolor aa77bb td gt font face verdana color white size 2 gt b gt Total b g
  • WPF Tabcontrol 获取最大选项卡的大小

    我有一个绑定到 Viewmodel 集合的 TabControl 这些 Viewmodel 被转换为适当的值以绘制到选项卡中