0

WindowsFormHost オブジェクトを介してホストされているコントロールに丸い境界線を配置しようとしています。OpacityMask に何を設定しても、レンダリングには影響しないようです。見逃したものはありますか?

これが私が使用しているXAMLコードです。子コントロールは実行時に追加されます。さまざまなマスクの組み合わせを試しましたが、どれもうまくいきませんでした。どんな助けでも大歓迎です。ありがとう!

    <WindowsFormsHost Background="#FF2BBA62" Height="414" Width="516" Margin="176.5,223,309.5,92" Name="vcxHost1" UseLayoutRounding="False" ClipToBounds="True" >
        <WindowsFormsHost.OpacityMask>
            <VisualBrush>
                <VisualBrush.Visual>
                    <Rectangle Height="10" Width="100" Name="border1" />
                </VisualBrush.Visual>
            </VisualBrush>
        </WindowsFormsHost.OpacityMask>
    </WindowsFormsHost>
4

1 に答える 1

1

z-indexingが機能しないのと同じ理由で機能しないと思われます。リンクされたドキュメントから:「ホストされた Windows フォーム コントロールは別の HWND で描画されるため、常に WPF 要素の上に描画されます。」

レイアウトの制限に関する段落を参照してください... http://msdn.microsoft.com/en-us/library/ms744952.aspx

これも役立つかもしれません... http://msdn.microsoft.com/en-us/library/ms742522.aspx

于 2011-03-10T04:42:14.037 に答える