多年不寫技術博客,手生的很,也不知道大家都關注什么,最近在研究Wpf及3d模型的展示,碰到很多問題,這個是最后一個問題,寫出來小結一下。。。。。。
WPF中如何調整TabControl的大小,使其跟隨Window的大小而改變?
1、 場景,VS2010新建一個WPF窗體中,添加了一個tabControl
想要的效果如下圖所示,tabcontrol能夠跟隨窗體的大小而變化
2、 步驟
(1) 選中tabcontrol,查看屬性-布局-width,點小菱形圖標
(2) 點擊后彈出菜單,選擇應用數據綁定
(3) 依次選擇綁定的目標
(4) 點擊路徑,選中里面的ActualWidth,完成綁定,這時Width的圖標變成圓柱
(5) 重復(1)-(4),設置Height綁定到窗體上GridControl上的ActualHeight屬性,成功。
(6) 完成后Xaml代碼如下:
1 <Window x:Class="WpfApplication1.MainWindow" 2 3 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 4 5 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 6 7 Title="MainWindow" Height="471" Width="664" xmlns:views="http://schemas.actiprosoftware.com/winfx/xaml/views" xmlns:ribbon="http://schemas.actiprosoftware.com/winfx/xaml/ribbon"> 8 9 <Grid Name="grid"> 10 11 <TabControl Height="{Binding ElementName=grid, Path=ActualHeight}" HorizontalAlignment="Left" Margin="-5,0,0,0" Name="tabControl1" VerticalAlignment="Top" Width="{Binding ElementName=grid, Path=ActualWidth}" DataContext="{Binding}"> 12 13 <TabItem Header="tabItem1" Name="tabItem1" Background="YellowGreen"> 14 15 <Canvas Background="Lavender"/> 16 17 </TabItem> 18 19 <TabItem Header="tabItem2" Name="tabItem2" Background="YellowGreen"> 20 21 <Canvas Background="Lavender"/> 22 23 </TabItem> 24 25 </TabControl> 26 27 </Grid> 28 29 </Window>