今回はC#のWindowフォームアプリケーションにて、Textbox上でCtrl+Enterを押されたことを判定する方法についてです。最近C#のWindowフォームアプリケーションで、ちょっとしたGUIアプリを作っています。そのときTextboxを設置し、そこで「Ctrl+Enterを押したとき、ある処理を行う」という処理を作るつもりでした。「まぁサクッといくっしょ」と思っていたのも束の間、躓きました......こちらの解決方法についてです。解説Enterキーを取るにはCtrlキーを取るには単純に複合すると......できない解決と原因あとがき解決方法まずは解決方法です。)解説Enterキーを取るにはまずEnterキーを取るには、このようにすればいけます。}}Ctrlキーを取るにはCtrlキーはこんな感じ。}}単純に複合すると......できないということはですよ。)で取れるのでは!?と思うわけですよ。......うまく取れない......ブレークして値を見てみるとe.KeyChar:0x0AControl.ModifierKeys:Controlとなっている。調べまわってたらわかったー!!これで解決。)これでもOK!こっちの方が短いですね。)よくよく考えると、Enterは「改行」ですよね。「0x0D:'\r'」が取れていたようです。いうか、キーコード的には、改行って「\r」扱いなんですね。Ctrlキーを同時入力することで、「\n」に扱いが変わるようです。システム的な問題なんでしょう(ってことにしとく)。Ctrl+Enter入力時には、「0x0A:'\n'」が取れていたようです。今回はKeys.Enter(\r)としていたところを、Keys.LineFeed(\n)とすることで解決しました。あとがきさて、あまりGUIアプリを作っていなかったことが露見しましたね。いや作ってはいるんですよ?でもボタンクリックしか使わないみたいな単純なものばかりで......そんなことはどうでもいいので、何かのお役に立てると幸いですー。lisz-works引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。