VisualStudio2005Pro(C#)とSQLServer2005でデータベースアプリケーションを作成しています。フォームにComboBoxを配置してビルドするとComboBoxの入力時(ComboBoxにカーソルが移動した時)にアプリケーションの動きがすべて停止します。エラーなどはでません。実行を停止するしか方法がありません。ちなみにComboBoxはデータソースにデータテーブルを指定してDisplayMemberとValueMemberを指定しています。更にフォームロード時に下記のようなコードで自由入力を禁止し初期値を設定しています。


//コンボボックスに自由な入力値は許さない
syainComboBox.DropDownStyle = syainComboBox.DropDownList;
//コンボボックス初期値設定
syainComboBox.SelectedIndex = 0;

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2007/08/30 09:48:09
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:KUROX No.1

回答回数3542ベストアンサー獲得回数140

ポイント70pt

>ComboBoxはデータソースにデータテーブルを指定して

>DisplayMemberとValueMemberを指定しています

DBとの関連付けをはずしたら、固まらないかどうか

確認してもらえますか?それでも固まるのならDBは関係なし。

可能性の1つは、DBにアクセスに行ってると思うのですが、

大量件数のデータを取得しに行ってるんじゃないかなと・・。

データがすべて取得できるまでは画面が固まる。

もちろん明らかにDBの中のデータ件数が100件(1000件?)

程度ならこの可能性はありません。

id:artsnet111

DBはテストで1件あるだけです。

気になるのはDisplayMemberとValueMemberを設定しているので

DBの該当フィールドの型をtinyintにしているところです。

DBに入る値が1~5なのでこれでいいのかと思ってやりましたがこれがいけないのでしょうか?

2007/08/29 12:38:04
id:minkpa No.2

回答回数4178ベストアンサー獲得回数55

id:artsnet111

テキトーな回答ならしないでください。

2007/08/29 12:38:54
  • id:freemann
    ちょっと気になったのが、
    syainComboBox.DropDownStyle = syainComboBox.DropDownList;
    のところなのですが、ここは、
    syainComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
    にすべきな気がしますので、試しに直してみてください。
  • id:artsnet111
    artsnet111 2007/08/30 18:32:40
    すいません。上記はタイプミスです。
    syainComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
    になっています。
  • id:freemann
    試しに作ってみましたが、その現象は再現しませんでした。
    以下に私の使ったサンプルコードを載せておきます。

    private void Form1_Load(object sender, EventArgs e)
    {
    // TODO: このコード行はデータを 'northwindDataSet.Categories' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
    this.categoriesTableAdapter.Fill(this.northwindDataSet.Categories);
    this.comboBox1.DataSource = this.northwindDataSet.Tables[0];
    this.comboBox1.DisplayMember = "CategoryName";
    this.comboBox1.ValueMember = "CategoryID";
    this.comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
    this.comboBox1.SelectedIndex = 0;
    }

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません