я работаю над счетом продажи в счете продажи я автоматически заполняю данные о продукте в соответствующих полях, например, когда пользователь вводит код продукта в текстовое поле кода продукта, текстовые поля названия продукта и цены продукта автоматически заполняются путем извлечения данных из БД , я хочу, чтобы когда пользователь запускает ввод кода здесь, программа давала предложения обо всех продуктах в базе данных. например, когда пользователь вводит 1, программа дает предложение о кодах продуктов, коды продуктов, начинающиеся с 1, показывают себя, и пользователь просто выбирает тот, который он хочет.
код, который я сделал для события изменения текста в текстовом поле кода продукта,
private void textBox2_TextChanged(object sender, EventArgs e)
{
if (txtProductCode1.Text == "")
{
txtProductName1.Text = "";
txtQty.Text = "";
txtSalePrice.Text = "";
txtTotal.Text = "";
}
string sql = "select productprice, ProductName";
sql += " from dbo.productlog";
sql += " where productCode = '" + txtProductCode1.Text + "'"; // Placing ProductCode in single quotes because it's not an int column, but a varchar column, in SQL server
SqlConnection cn = new SqlConnection();
SqlCommand rs = new SqlCommand();
SqlDataReader sdr = null;
clsConnection clsCon = new clsConnection();
clsCon.fnc_ConnectToDB(ref cn);
rs.Connection = cn;
rs.CommandText = sql;
sdr = rs.ExecuteReader();
if (sdr.Read())
{
txtProductName1.Text = sdr["ProductName"].ToString();
txtSalePrice.Text = sdr["ProductPrice"].ToString();
}
else if (txtProductName.Text == "")
{
goto exitPoint;
}
else if (!sdr.Read())
{
MessageBox.Show("Data not found", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
txtProductName.Focus();
}
exitPoint:
sdr.Close();
rs = null;
cn.Close();
}
как я могу показать предложение о кодах продуктов в текстовом поле?
РЕДАКТИРОВАТЬ:
Это не приложение Windform означает, что это настольное приложение, и я создаю его на С#.net, используя VS2010.
goto
- person Max   schedule 07.02.2014