繁体   English   中英

WPF内容对齐问题

[英]WPF Content alignment problem

这是几个小时以来导致我出现问题的代码:

        TabItem newTab = new TabItem();
        newTab.Header = source.Name;
        newTab.Content = source.GetGui();
        newTab.HorizontalContentAlignment = HorizontalAlignment.Stretch;
        newTab.VerticalContentAlignment = VerticalAlignment.Stretch;
        this.inputSourceDisplay.Items.Add(newTab);

输出是控件(来自GetGui())显示的控件,但在中间垂直位置和在水平中间位置,但尚未拉伸。

如何解决该问题或如何调试呢?

您的“ GetGui()”方法返回什么? 是UserControl吗? 默认情况下,UserControl显式设置其Width和Height属性:

<UserControl x:Class="WpfApplication1.UserControl1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="300" Width="300">

明确设置了“高度”和“宽度”后,UserControl将不会响应诸如Horizo​​ntalContentAlignment之类的属性。

在WPF中,如果用户控件具有默认的宽度或高度,则即使您使用Enumeration进行拉伸,用户控件也不会拉伸。

解决方案是从UserControl Xaml中删除默认的宽度和高度,并使控件按照应有的方式运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM