Не удалось получить управление для правильной работы
У меня есть следующий код.
public partial class Form1 : Form
{
SqlConnection sc=new SqlConnection("Data Source=HP-HP;Initial Catalog=MIND;Integrated Security=True");
SqlDataAdapter dc=new SqlDataAdapter();
DataSet ds = new DataSet();
public Form1()
{
InitializeComponent();
CustomTextBox ctb = new CustomTextBox();
ctb.KeyDown += new KeyEventHandler(txtlogin_userid_KeyDown);
}
public class CustomTextBox : System.Windows.Forms.TextBox
{
protected override bool IsInputKey(Keys keyData)
{
if (keyData == Keys.Return)
return true;
return base.IsInputKey(keyData);
}
}
private void txtlogin_userid_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//Enter key is down
//Capture the text
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();
sc.Open();
SqlCommand cmd = new SqlCommand("select Location from UserMaster where UserID='" + txb.Text + "'" ,sc);
string a = Convert.ToString(cmd.ExecuteScalar());
MessageBox.Show(a);
sc.Close();
string b = "MIND";
if()
{
radioMIND.Checked = true;
}
else
{ radiomssl.Checked = true;
}
}
}
В textlogin_keydown
После появления окна сообщения со значением a проблема начинается. У меня есть два вида значения в базе данных. У одного в нем есть "УМ", а у другого - "MSSL". Я должен ввести число в текстовом поле TXB.
Теперь проблема в том, что независимо от того, какой номер я ввожу в текстовое поле, в окне сообщения отображается правильная информация, например mind или mssl, но часть if if делает это неправильно. Он всегда проверяет кнопку radiomssl, думает ли она или mssl.
Я знаю, что есть некоторые проблемы с инъекцией SQL, но меня это не волнует. Я просто хочу, чтобы этот кусок кода работал быстро, пожалуйста, помогите