0
2 콤보 박스의 표시 멤버를 보유하는 datagridview (dgv)가 있습니다. dgv는 콤보 박스 간의 1-n n-1 관계를 표시합니다.데이터 맺음말 행을 클릭하여 콤보 상자에서 선택한 값 업데이트
gridview에서 행을 누르면 콤보 상자에서 선택한 값을 변경하는 코드를 작성했습니다. 그것은 항상 작동하지 않습니다. 즉, 누를 때마다 각 열에 대한 업데이트가 수행됩니다. 매번 변경하지 마십시오.
예 : 행 1, 2, 3, 4를 클릭하면 아무 일도 일어나지 않습니다. 행을 클릭하면 코드가 작동하기 시작합니다. 다음 다시 작동하지 않는 등. 내가 너무 한 번이 실수를 확신
private void dgvTypesRelation_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
string empType = Header.returnItemInGrid(dgvTypesRelation.SelectedRows, 0);
string reqType = Header.returnItemInGrid(dgvTypesRelation.SelectedRows, 1);
string query1 = "SELECT Request_TypeID FROM Request_Type WHERE [email protected]";
string query2 = "SELECT Employee_TypeID FROM Employee_Type WHERE [email protected]";
int req, emp;
DataTable result = new DataTable();
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(query1, conn))
{
cmd.Parameters.AddWithValue("@r", reqType);
using (SqlDataReader dr = cmd.ExecuteReader())
{
result.Load(dr);
}
req = Convert.ToInt32(result.Rows[0]["Request_TypeID"]);
cmd.CommandText = query2;
cmd.Parameters.AddWithValue("@e", empType);
result = new DataTable();
using (SqlDataReader dr = cmd.ExecuteReader())
{
result.Load(dr);
}
emp = Convert.ToInt32(result.Rows[0]["Employee_TypeID"]);
}
}
cmbxRequestConnect.SelectedValue = req;
cmbxEmployeeConnect.SelectedValue = emp;
chkbxRemove.Checked = true;
}