[英]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将不会响应诸如HorizontalContentAlignment之类的属性。
在WPF中,如果用户控件具有默认的宽度或高度,则即使您使用Enumeration进行拉伸,用户控件也不会拉伸。
解决方案是从UserControl Xaml中删除默认的宽度和高度,并使控件按照应有的方式运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.