0

キーダウン機能を使用しようとしています.私のコードは稼働していますが、この奇妙なエラーが発生しています.データベース列の値がMINDの場合、ラジオボタンの心をチェックする必要があるクエリを実行しています.それ以外の場合はMSSL.しかし、コントロールは常にデータベースの値はMINDまたはMSSLです。以下は私のコードです

    private void txtlogin_userid_KeyDown(object sender, KeyEventArgs e)
     {
       if (e.KeyCode == Keys.Enter)
         {
           if (sender is TextBox)
           {
        TextBox txb = (TextBox)sender;
        dc.SelectCommand = new SqlCommand("select * from UserMaster where UserID='" + txb.Text + "'", sc);
        dc.Fill(ds);
        dg.DataSource = ds.Tables[0];
        txtlogin_name.Text = ds.Tables[0].Rows[0][1].ToString();
        txtlogin_mailid.Text = ds.Tables[0].Rows[0][2].ToString();
        MessageBox.Show(ds.Tables[0].Rows[0][3].ToString());
        string a = "MIND";

        if (ds.Tables[0].Rows[0][3].ToString() == a)
        {
            radiomind.Checked = true;
        }
        else
        {
            radioMSSL.Checked = true;
        }
    }
}}

データベースの値として MIND を持つ任意の数値を入力すると、メッセージ ボックスに MIND と表示されますが、コントロールは別の部分に入り、MSSL ラジオ ボタンがアクティブになります。どうすればよいですか?

4

3 に答える 3

0

試す

if (e.KeyCode == Keys.Return)

の代わりにKeys.Enter


あなたが書くなら

private void txtlogin_userid_KeyDown(object sender, KeyEventArgs e)
{
    System.Diagnostics.Debug.WriteLine(e.KeyCode);
}

出力ウィンドウに実際のコードが表示されます (メニューで開きます: [デバッグ] > [ウィンドウ] > [出力])。

于 2013-09-10T17:37:45.157 に答える
0

試す

        Convert.ToString(ds.Tables[0].Rows[0][3]) == a 

その代わり。

于 2013-09-10T17:40:46.490 に答える