1
我有一个WPF窗口,其中包含带有两个选项卡的<TabControl>
。如果容器足够宽,展开TabControl
每个标签主体包含一个UserControl,每个UserControl的固定宽度为300px。
如果WPF窗口超过700像素宽,我要显示的TabControl
的页面并排侧,像这样:
<Window>
<TabControl>
<TabItem Header="Left page">
<UserControlLeft Width="300" />
</TabItem>
<TabItem Header="Right page">
<UserControlRight Width="300" />
</TabItem>
</TabControl>
</Window>
如果window.Width > = 700
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="50" /> <!-- Spacer column -->
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Left page" />
<UserControlLeft Grid.Column="0" Grid.Row="1" Width="300" />
<Label Grid.Column="1" Grid.Row="0" Content="Right page" />
<UserControlRightt Grid.Column="1" Grid.Row="1" Width="300" />
</Grid>
我该如何做到这一点?
我猜我可以在XAML中创建网格和TabControl,并订阅调整大小事件并重新提交UserControlLeft
和UserControlRight
实例,但感觉有点ha and和脆弱。 WPF/XAML有什么等同于CSS的媒体查询?
嘿,那里,给定的解决方案工作? – almulo
@almulo我还没有机会尝试它,谢谢 – Dai