protected virtual void mcs_ctxmLoading_jumpTabEpg(MenuItem menu) { //ジャンプ先がない場合無効にする SearchItem item = mcs_GetSearchItem(); menu.IsEnabled = item != null; //時間がかかったりするとイヤなのでメニュー構築を優先する Dispatcher.CurrentDispatcher.BeginInvoke(new Action(() => { if (item != null && MenuUtil.CheckJumpTab(item) == false) { menu.ToolTip = ((menu.ToolTip as string) + "\r\n番組表にアイテムが見つかりません。").Trim(); } }), DispatcherPriority.Loaded); }
private void MoveViewEpgTarget() { if (DataView is EpgViewBase) { //BeginInvokeはフォーカス対応 MenuUtil.CheckJumpTab(new SearchItem(eventInfo), true); Dispatcher.BeginInvoke(new Action(() => { DataView.MoveToProgramItem(eventInfo); }), DispatcherPriority.Loaded); } else { UpdateViewSelection(3); } }
private void MoveViewReserveTarget() { //予約一覧以外では「前へ」「次へ」の移動の時に追従させる if (DataView is EpgViewBase) { //BeginInvokeはフォーカス対応 MenuUtil.CheckJumpTab(new ReserveItem(reserveInfo), true); Dispatcher.BeginInvoke(new Action(() => { DataView.MoveToReserveItem(reserveInfo); }), DispatcherPriority.Loaded); } else { UpdateViewSelection(3); } }