Я работаю с WinForm
в этом у меня есть 3 RadioButton
один ComboBox
и три BindingSource
Я хочу, чтобы при проверке любого из RadioButton
s значения из конкретного DataSources
связывались с ValueMember
и DisplayMember
.
ComboBox.
В программе есть SQL-запрос, в который я хочу отправить значение на основе установленного переключателя.
private void rdbMed_CheckedChanged(object sender, EventArgs e)
{
cmbStock.DataSource = null;
cmbStock.DataSource = this.medicinesBindingSource;
this.cmbStock.DisplayMember = ""; //i want to bind "Med_ID" from medicinesBindingSource
this.cmbStock.ValueMember = ""; //"Med_Name"
}
private void rdbCat_CheckedChanged(object sender, EventArgs e)
{
cmbStock.DataSource = null;
cmbStock.DataSource = this.categoriesBindingSource;
this.cmbStock.DisplayMember = ""; //"category_Name"
this.cmbStock.ValueMember = ""; // category_ID"
}
private void rdbPharm_CheckedChanged(object sender, EventArgs e)
{
cmbStock.DataSource = null;
cmbStock.DataSource = this.pharmaceuticalBindingSource;
this.cmbStock.DisplayMember = "";// "Pharma_Name"
this.cmbStock.ValueMember = "";// "Pharma_ID"
}
Ниже приведены параметры запроса. Это поможет вам понять, чего я хочу достичь.
if (rdbMed.Checked)
{
con.cmd.Parameters.AddWithValue("@Med_ID", cmbStock.ValueMember);
con.cmd.Parameters.AddWithValue("@category_ID", "");
con.cmd.Parameters.AddWithValue("@Pharma_ID", "");
}
else if (rdbCat.Checked)
{
con.cmd.Parameters.AddWithValue("@Med_ID", "");
con.cmd.Parameters.AddWithValue("@category_ID", cmbStock.ValueMember);
con.cmd.Parameters.AddWithValue("@Pharma_ID", "");
}
else if (rdbPharm.Checked)
{
con.cmd.Parameters.AddWithValue("@Med_ID", "");
con.cmd.Parameters.AddWithValue("@category_ID", "");
con.cmd.Parameters.AddWithValue("@Pharma_ID", cmbStock.ValueMember);
}