0

WPF アプリケーションでホストされている Visio Drawing Control でコンテキスト メニューを使用する際に問題が発生しています。DrawingControl は WindowsFormsHost コントロールによってホストされており、標準の右クリック動作をオーバーライドして、次のようなカスタム ContextMenu を追加したいと考えています。

<WindowsFormsHost Grid.Row="0" Grid.Column="1" Name="_WFHost"
        SnapsToDevicePixels="True">
        <visio:AxDrawingControl x:Name="_drawingControl"/> 

        <WindowsFormsHost.ContextMenu>
            <ContextMenu StaysOpen="True" Name="VisioContextMenu">
                <MenuItem x:Name="QuotaMenuItem" Header="Quota" Click="QuotaMenuItem_Click"/>

                <MenuItem x:Name="TraslaMenuItem" Header="Trasla" Click="TraslaMenuItem_Click"/>
            </ContextMenu>
        </WindowsFormsHost.ContextMenu>
    </WindowsFormsHost>

コード ビハインド ファイルでは、Visio 標準のコンテキスト メニューの代わりにコンテキスト メニューが表示されるように、DrawingControl の mouseUp イベントを管理しています。ContextMenu (VisioContextMenu という名前のコード内) が表示されますが、約 2 秒後に、何もしないか操作しないと消えます。

ContextMenu を表示したいときは、IsOpen プロパティと StaysOpen プロパティを常に true に設定しますが、前述のように動作します。本当にどうしたらいいのかわからない!

何かヒントはありますか?ありがとうフランチェスコ

4

1 に答える 1

0

コードも投稿していただけると助かりますが、mouseup イベントを正しく処理していることを確認してください。

それだけで問題になる可能性があります - そのイベントを削除してみてください。

于 2012-02-28T19:55:48.983 に答える