0

出于某种原因,我无法让我的 Winform 用户控件适合 WindowsFormsHost。这是我正在使用的 xaml:

<Grid>
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="326*" />
    <ColumnDefinition Width="300*" />
  </Grid.ColumnDefinitions>
  <Grid.RowDefinitions>
    <RowDefinition Height="264*" />
    <RowDefinition Height="100*" />
    <RowDefinition Height="50*" />
  </Grid.RowDefinitions>
  <WindowsFormsHost   Grid.Row="1"
                      Grid.Column="0">
    <winforms:ServicesUserControl x:Name="servicesUserControl"
                                  UserCanEditRevenue="True"
                                  BorderStyle="Fixed3D">
    </winforms:ServicesUserControl>
  </WindowsFormsHost>
</Grid>

这是一个屏幕截图,显示我的意思:

这是原始的用户控件: 在此处输入图像描述

但是当我把它放在 WindowsFormHost 中时,我得到了这个: 在此处输入图像描述

4

1 回答 1

0

除非 UserControl 有自己的逻辑来调整列的大小,否则 UserControl 的宽度将绑定到其列的宽度。我会尝试在 ScrollViewer 中实现 WinFormsHost,如果这将是可接受的布局。

<ScrollViewer Grid.Row="1"
              Grid.Column="0">
  <WindowsFormsHost>
    <winforms:ServicesUserControl x:Name="servicesUserControl"
                                  UserCanEditRevenue="True"
                                  BorderStyle="Fixed3D" />
  </WindowsFormsHost>
</ScrollViewer>
于 2012-11-30T21:16:35.687 回答