我有一个TabControl绑定到viewmodels的集合,它被转换成适合绘制到选项卡中的适当的:
<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. Let WPF Tabcontrol height assume height of largest item?提到了几种在答案中实现这一点的方法(来自我所理解的):
>使用带有SharedSizeGroup的Grid – 似乎需要在TabControl的实际内容上应用于DataTemplate,它会覆盖由资源字典中创建的VM-> View映射实现的自动View图形
>使用宽度/高度转换器,这需要将我的TabControl绑定到UI元素的集合而不是viewmodels
有没有人有解决类似问题的经验?每当我在这方面取得一些进展时,我似乎都会碰到更多的墙壁.