- PR -

UserControl上のComboBox

1
投稿者投稿内容
ymatsu
会議室デビュー日: 2004/08/24
投稿数: 2
投稿日時: 2004-08-24 19:44
C#.NETでUserControl上にComboBox、Labelを配置した複合コントロールを作成しています。
コンボボックスにフォーカスがある状態でファンクションキーをキーボード入力すると
コンボボックスが空表示(クリアされる)になります。
ファンクションキー入力を無効にする方法はないでしょうか。
(ファンクションキー入力で、コンボのテキスト部の文字列を取得して処理しようとしています。)
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-08-24 22:45
引用:

ymatsuさんの書き込み (2004-08-24 19:44) より:
C#.NETでUserControl上にComboBox、Labelを配置した複合コントロールを作成しています。
コンボボックスにフォーカスがある状態でファンクションキーをキーボード入力すると
コンボボックスが空表示(クリアされる)になります。
ファンクションキー入力を無効にする方法はないでしょうか。
(ファンクションキー入力で、コンボのテキスト部の文字列を取得して処理しようとしています。)


 問題が理解できません。

 ファンクションキーで、コンボボックスのテキスト部分(ComboBox.Textのこと?)を取得して処理しようとしているのですよね?その中でクリアしているのではないですか?・・・という風にも理解できます。
 また、クリアされるというのも、コンボボックスのリストすべてがクリアされるのでしょうか?それとも入力中のものでしょうか。また、ファンクションキー以外の場合は?ファンクションキーも、何番?


 落ち着いてデバッガで追いかければ、簡単に解決できるように思います。
ymatsu
会議室デビュー日: 2004/08/24
投稿数: 2
投稿日時: 2004-08-25 01:18
早速の回答ありがとうございます。
わかりにくい状況説明ですみません。
やりたいことは以下のとおりです。
「ComboBox.Textにフォーカスがあるときに、F4キー入力してもComboBox.TextがクリアされないでF4キー処理(ユーザ関数)を行う」
ファンクションキー以外はComboBox.Textの入力として受け付けます。
ブレークポイントをいれて色々試したのですが、F4キー入力後にComboBox.Textがクリアされるタイミングはわかりませんでした
UserControl上にComboBox、Labelを配置した複合コントロールだとうまくいかないのでしょうか・・・
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-08-25 08:24
 いや、だから、F4クリックと、コンボボックスのクリアの関係がわかりません。手元のサンプルアプリでは、入力可能コンボボックスにフォーカスがある状態でF4クリックすると、コンボボックスのリストが展開されます。エクスプローラのアドレス入力欄でも同じなので、これが標準のショートカットアクションだと思われます。
 このため、どこかで入力されたキーの判定をしていると思いますが、その部分で消去していませんか?
えムナウ
大ベテラン
会議室デビュー日: 2004/06/10
投稿数: 187
お住まい・勤務地: 東京
投稿日時: 2004-08-25 13:47
私も状況がわからないのですが、
これで直るといいなという期待を込めて例を挙げておきます。
http://www.geocities.jp/mnow/cs_usercontrol2.html
_________________
えムナウ Microsoft MVP for Visual Developer - C#,2005/01-2007/12
えムナウのプログラミングのページ Blog1 Blog2
1

スキルアップ/キャリアアップ(JOB@IT)