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