C# WPF UserControl在运行时溢出父窗口
我正在设置一个WPF应用程序,其中有一个带有单选按钮的标题,通过更改活动的UserControl来更改其下方网格的视图。我还动态地将窗口的高度和宽度设置为用户窗口高度的80%。当窗口显示my usercontrol时,usercontrol要么最终填满了网格,要么网格切断了usercontrol 我已经将行高度设置为动态,并删除了usercontrol的默认高度和宽度,但它仍然被切断。据我所知,usercontrol应该自动填充网格的大小C# WPF UserControl在运行时溢出父窗口,c#,wpf,user-controls,resize,C#,Wpf,User Controls,Resize,我正在设置一个WPF应用程序,其中有一个带有单选按钮的标题,通过更改活动的UserControl来更改其下方网格的视图。我还动态地将窗口的高度和宽度设置为用户窗口高度的80%。当窗口显示my usercontrol时,usercontrol要么最终填满了网格,要么网格切断了usercontrol 我已经将行高度设置为动态,并删除了usercontrol的默认高度和宽度,但它仍然被切断。据我所知,usercontrol应该自动填充网格的大小 <Viewbox Stretch="Uniform
<Viewbox Stretch="UniformToFill">
<Grid Height="880" Width="960">
<!--Seperate View Style -->
<Grid.RowDefinitions>
<RowDefinition Height="50" />
<RowDefinition Height="0" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<ContentControl Content="{Binding }" Grid.Row="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
显然,之所以出现此问题,是因为usercontrols正在缩放,但需要特定的纵横比。当移除viewbox时,窗口大小将进行调整,而不会更改内部控件的大小,这向我表明它与usercontrol的大小和窗口大小有关。在CS代码中调整我的纵横比,直到其大小正确 显然,之所以出现此问题,是因为usercontrols正在缩放,但需要特定的纵横比。当移除viewbox时,窗口大小将进行调整,而不会更改内部控件的大小,这向我表明它与usercontrol的大小和窗口大小有关。在CS代码中调整我的纵横比,直到其大小正确 尚不清楚这些XAML和代码片段应该做什么以及它们之间的关系。Viewbox的用途是什么?当你说“用户窗口”时,你是指屏幕吗?W视图框用于处理不同的屏幕缩放。下面的网格是定义usercontrols的contentcontrol的地方,下面的C代码是我设置窗口大小的方式。下面的最后一段XAML是usercontrol网格以及我是如何定义它的。对不起,我没说清楚。通过用户窗口,我指的是WPF程序的主窗口,不清楚这些XAML和代码片段应该做什么,以及它们之间的关系。Viewbox的用途是什么?当你说“用户窗口”时,你是指屏幕吗?W视图框用于处理不同的屏幕缩放。下面的网格是定义usercontrols的contentcontrol的地方,下面的C代码是我设置窗口大小的方式。下面的最后一段XAML是usercontrol网格以及我是如何定义它的。对不起,我没说清楚。按用户窗口,我指的是WPF程序的主窗口。
double FormatHeight = SystemParameters.PrimaryScreenHeight * .8;
double FormatWidth = FormatHeight * 1.0909;
InitializeComponent();
this.Height = FormatHeight;
this.Width = FormatWidth;
<Grid Background="#EFEFEF" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Border x:Name="AlertHelperPanel" Margin="10,10,10,10" Background="White">
<ListView Name="AlertNotifications" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Height="{Binding Path=ActualHeight, ElementName=AlertHelperPanel}"
Width="{Binding Path=ActualWidth, ElementName=AlertHelperPanel}"
ItemsSource="{Binding Alerts}"
MouseDoubleClick="details_OnMouseDoubleClick">
<ListView.View>