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 に答える