私のガジェット アプリケーションでは、標準のガジェット コンテキスト メニューの表示に問題があります。Silverlight コントロールが原因で発生した問題は、右ボタン Silverlight コントロール ハンドル contextmenu イベントをクリックすると発生します。
したがって、最初の私の解決策は、Silverlight コントロールの透明な Web コントロール (テーブル) の上に置くことでした。そうすれば、ガジェットのコンテキストメニューがうまく機能し、Silverlightコントロールが機能しなくなりました。次のステップは、透明な Web コントロールを非表示にし、oncontextmenu を処理することでした。このような。
HTML
<body oncontextmenu="ContextMenu();" onload="init();" >
JavaScript
ContextMenu()
{
var vis = document.getElementById('overlapControl').style.visibility;
if (vis == "hidden") {
document.getElementById('overlapControl').style.visibility = "visible";
window.event.returnValue = false;
}
いくつかの不具合で動作しています。右ボタンを 2 回クリックし、透明なコントロールを非表示にするイベントを行う必要があります。2 つ目は大きな問題ではありません。たとえば、onmouseover イベントを使用してコントロールを非表示にすることができます。しかし、最初のものは首の本当の痛みです。ワンクリックでコンテキストメニューを表示する方法がないようです。
それを機能させる方法についてのアイデア。または多分他のより良い解決策。