选项卡项wpf的自动高度

本文关键字:高度 wpf 选项 | 更新日期: 2023-09-27 18:21:48

我想通过带有两个选项卡的代码创建一个选项卡控件。我使用了以下代码:

                TabControl tb = new TabControl();
                tb.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch;
                tb.VerticalAlignment = System.Windows.VerticalAlignment.Stretch;
                tb.VerticalContentAlignment = System.Windows.VerticalAlignment.Stretch;
                tb.HorizontalContentAlignment =  System.Windows.HorizontalAlignment.Stretch;
                ressource_design.initialiserTabControl(tb);
                tb.Margin = new Thickness(10, 10, 10, 10);
                TabItem ti1 = new TabItem();
                ti1.Header = ServicesLangue.RM.GetString("CONTENU_ACCUEIL_LISTE_SAS");
                ti1.Content = _listeSAS;
                tb.Items.Add(ti1);
                TabItem ti2 = new TabItem();
                ti2.Header = ServicesLangue.RM.GetString("CONTENU_ACCUEIL_TBSM");
                ti2.Content = _tbsm;
                tb.Items.Add(ti2);
                this.DockPrincipal.Children.Add(tb);

但是我的tabitem的高度是儿童控制的高度。这简直把我逼疯了!

我已经尝试在我的孩子控制中添加以下代码:

Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Grid}}, Path=ActualWidth}"
                Height="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type Grid}}, Path=ActualHeight}"

但这让孩子的控制太大了!

注:我对《协定》也有同样的问题。

感谢

选项卡项wpf的自动高度

删除在XAML或代码隐藏中设置的任何静态Height和Width。HorizontalContentAlign和VerticalContentAlign默认设置为"拉伸"。

如果您的DockPrincipal是一个Dockpanel并且正在填写您的整个表单,您可以设置LastChildFill="True"