我的XAML中有一个Frame:
<Frame Grid.Row="1" Content="{Binding MainContent}" Margin="8" NavigationUIVisibility="Hidden" />
内容是在代码中设置的页面,如下所示:
MainContent = new MyPage();
我想将MyPage
的宽度和高度绑定到父框架的宽度和高度。
框架在网格行中,因此将随窗口一起调整大小。
答案 0 :(得分:2)
将MyPage的HorizontalAlignment和VerticalAlignment属性设置为“Stretch”,将其Margin设置为0.如果还不够,还将Frame的HorizontalContentAlignment和VerticalContentAlignment设置为“Stretch”。
要进行调试,请首先检查您的Frame是否实际上跟随其父级,更改其背景或执行类似操作。检查页面的高度和宽度是否设置为“自动”,MaxHeight和MaxWidth是否为0.还要检查页面中的子控件。 有时Blend可能会使用固定值覆盖此属性,或者在自动生成控件时设置它们。
例如,当您使用“组”命令来换行子元素时,生成的面板控件可能会带有固定的宽度和高度。
另一种情况:当您更改网格行或列大小类型的类型(使用设计器上的图标)而不在属性视图中显示其属性时,Blend可以设置MinimumWidth / Height。特别是在将尺寸类型更改为自动时会发生这种情况。