Контекстное меню гаджета Windows
В моем гаджет-приложении возникла проблема с отображением стандартного контекстного меню гаджета. Проблема, вызванная из-за управления Silverlight, когда я нажимаю правую кнопку Silverligh Control обрабатывать событие context menu.
Поэтому сначала я решил поставить поверх прозрачного веб-элемента управления silverlight control (таблица). Ну вот так у меня получилось хорошее рабочее контекстное меню гаджета и не работающий контроль Silverlight. Поэтому следующим шагом было сделать невидимым управление transperent web и обрабатывать oncontext menu. Как это.
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;
}
Работает с некоторыми глюками. Вам нужно сделать два щелчка правой кнопкой мыши и какое-то событие, чтобы скрыть прозрачный контроль. Второй - не большая проблема, я могу использовать событие onmouseover, например, чтобы скрыть контроль. Но первый - это настоящая боль в шее. Кажется, что нет способа показать контекстное меню одним щелчком мыши.
Любые идеи, как заставить это работать. или, может быть, другое лучшее решение.
1 ответ
Вы пробовали безоконный режим? Вот немного более сложный пример, но он должен дать вам некоторое представление.