DOBON.NETプログラミング道掲示板
(現在 過去ログ3 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
[
最新記事及び返信フォームをトピックトップへ
]
[ トピック内全3記事(1-3 表示) ] <<
0
>>
■34289
/ inTopicNo.1)
ToolStripMenuItemにShortcutKeysを指定した際の、元のコントロールを取得する方法
▼
■
□投稿者/ z-f
一般人(1回)-(2019/07/31(Wed) 15:13:57)
環境/言語:[C# WinForms .NETFramework 4.7.2 ]
分類:[.NET]
ContextMenuStripを使ってTextBox用のコンテキストメニューを作成中です。
ToolStripMenuItemにShortcutKeysを指定して、メニューをクリックした時とショートカットキーを押した場合で同じ挙動をさせたいのですが、
ショートカット使用時はthis.SourceControl=nullとなってしまい、使用元のTextBoxが取得できずに困っています。
何か良い方法は無いでしょうか?
引用返信
削除キー/
編集
削除
■34290
/ inTopicNo.2)
Re[1]: ToolStripMenuItemにShortcutKeysを指定した際の、元のコントロールを取得する方法
▲
▼
■
□投稿者/ 魔界の仮面弁士
大御所(1237回)-(2019/07/31(Wed) 16:28:03)
2019/07/31(Wed) 16:30:06 編集(投稿者)
■
No34289
に返信(z-fさんの記事)
> ショートカット使用時はthis.SourceControl=nullとなってしまい、使用元のTextBoxが取得できずに困っています。
キーボードショートカットを使う際には、そのコントロールが
アクティブになっているでしょうから、
ActiveControl プロパティで判断できるかもしれません。
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
// var menu = (ToolStripMenuItem)sender;
var sourceControl = contextMenuStrip1.SourceControl ?? (ActiveForm ?? this).ActiveControl;
if (sourceControl != null)
{
MessageBox.Show(sourceControl.Name);
}
}
引用返信
削除キー/
編集
削除
■34291
/ inTopicNo.3)
Re[2]: ToolStripMenuItemにShortcutKeysを指定した際の、元のコントロールを取得する方法
▲
▼
■
□投稿者/ z-f
一般人(2回)-(2019/07/31(Wed) 18:13:40)
なるほど、ActiveControlは思いつかなかった。
これでなんとかなりそうです。感謝。
解決
済
み!
引用返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-