我正在使用WindowsFormsHost显示640x480图像。WindowsFormsHost在使用Height="120“Width="160”和Grid.ColumnSpan="3“时运行良好,如下所示
<Grid Name="MainGrid" Margin="10 10 10 10">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<WindowsFormsHost Name="WindowsFormsHostL" Height="120" Width="160"
HorizontalAlignment="Center" Grid.Row="0" Grid.Column="0"
Grid.ColumnSpan="3"/>
但是当我尝试像这样将WindowsFormsHost的大小加倍时
<WindowsFormsHost Name="WindowsFormsHostL" Height="240" Width="320"
HorizontalAlignment="Center" Grid.Row="0" Grid.Column="0"
Grid.ColumnSpan="3"/>
.NET xaml查看器中的WindowsFormsHost是正确的,但似乎变小了,做了一个HorizontalAlignment=“左”,然后进入正方形。这
Debug.WriteLine(
"WindowsFormsHostL.ActualHeight " + WindowsFormsHostL.ActualHeight
+ " WindowsFormsHostL.ActualWidth " + WindowsFormsHostL.ActualWidth);
打印此内容
WindowsFormsHostL.ActualHeight 240 WindowsFormsHostL.ActualWidth 320
因此,运行时似乎认为它是正确的。我正在做干净的构建。我错过了什么-理解?为什么我不能简单地在xaml中增加这个WindowsFormsHost的大小呢?
发布于 2013-07-22 23:19:00
为什么不将Grid的行和列定义设置为您希望显示的大小?
行定义:
<RowDefinition Height="240"/>
列定义:
<ColumnDefinition Width="320"/>
然后将水平和垂直对齐设置为“拉伸”?
https://stackoverflow.com/questions/17790546
复制相似问题