Поиск записи из базы данных и отображение значения в текстовом поле и раскрывающемся списке - PullRequest
0 голосов
/ 31 января 2020

Ниже приведен мой код для кнопки поиска. Когда я ищу запись о студенте, значение отображается в текстовых полях, но не в выпадающем списке. В чем причина этого?

SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Final Project\FinalProject\FinalProject\App_Data\Record.mdf;Integrated Security=True;User Instance=True");

try
{
    string query = "select * from student where StdId='" + txtID.Text + "'";
    SqlCommand com = new SqlCommand(query, con);
    SqlDataReader reader = null;

    con.Open();
    reader = com.ExecuteReader();
    if (reader.Read())
    {
        txtfirstname.Text = reader.GetValue(3).ToString();
        txtlastname.Text = reader.GetValue(4).ToString();
        txtfaname.Text = reader.GetValue(5).ToString();
        txtfcellno.Text = reader.GetValue(6).ToString();
        txtfnic.Text = reader.GetValue(7).ToString();
        txthome.Text = reader.GetValue(8).ToString();

        drpclassno.Text = reader.GetValue(9).ToString();
        drpgender.Text = reader.GetValue(10).ToString();
        drpday.Text = reader.GetValue(11).ToString();
        drpmonth.Text = reader.GetValue(12).ToString();
        drpyear.Text = reader.GetValue(13).ToString();
    }
    else
    {
        lblmsg.Text = "Record was not Found...!";
    }

1 Ответ

0 голосов
/ 31 января 2020

Используемая здесь технология выглядит как ASP. NET, потому что DropDownList в Windows Forms / WPF называется ComboBox.

Вы присваиваете значения, которых нет в источник списка.

Чтобы присвоить значение DropDownList, оно должно быть в его DataSource:

drpclassno.DataSource = new List<string> { "1", "2", "3" };
drpclassno.DataBind();
drpclassno.Text = "3"; // Works, because its in the Source

drpclassno.DataSource = new List<string> { "1", "2", "3" };
drpclassno.DataBind();
drpclassno.Text = "4"; // Does not work

Вы также можете использовать свойство SelectedValue вместо Text, чтобы прояснить ваше намерение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...