Hatena::ブログ(Diary)

BiBoLoG

2008-10-16

テキストボックスで CTRL+A を有効にする

テキストボックスにおいてCtrl+Aで「すべて選択」を実現するためのコード.後で実験する.前回作っていたプログラムに適用したところ,「すべて選択」できた.

日本語Google検索「TextBox Ctrl A」で11位だった.上位に来いよ.

フォームに属する全てのテキストボックスで CTRL+A を有効にしたい場合に。

protected override bool ProcessDialogKey(Keys keyData)
{
	switch (keyData)
	{
		case Keys.A | Keys.Control:
			if (this.ActiveControl is TextBox)
			{
				TextBox txt = (TextBox)this.ActiveControl;
				txt.SelectionStart = 0;
				txt.SelectionLength = txt.Text.Length;
				return true;
			}
			break;
		//このほかにもショートカットキーなどをここに記述できる
	}
	return base.ProcessDialogKey(keyData);
}
C#コード断片/共通/テキストボックスで CTRL+A を有効にする - Ukiwiki

べた書きなんだな.

qeqe 2010/10/03 01:12 ベタコピさせてもらいました。どうもです。

C#初心者C#初心者 2014/08/16 21:09 public partial class Form1 : Form
{
}
の中にこの関数を置けばいいんですよね?でも、うまく動いてくれないんですが。
なにかコツがありますか?

GuernseyGuernsey 2014/08/31 09:49 >>2014/08/16 21:09
1.時間経過に伴い,どう記述したかすっかり忘れてしまった.
2.「うまく動いてくれない」とはどういう意味か不明.「ビルドして実行できるが,Ctrl+Aを押しても何も起こらない」のか.
3.C#の使用変化に伴って,現在は大カッコで但し書きが必要らしい.調べると良い.http://msdn.microsoft.com/ja-jp/library/system.windows.forms.control.processdialogkey(v=vs.110).aspx http://dobon.net/vb/dotnet/control/btndetectarraykey.html

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/Guernsey/20081016/1224135096
リンク元