Я разрабатываю приложение, в котором преподавателю разрешено вводить знаки для учащихся, основываясь на выборе предмета, который они учат. Теперь я использую 4 columed datagrid, в который я заполняю все классы rollnum (1-й столбец) и имя (2-й столбец) и текстовое поле для ввода тестовых меток (3-й столбец) и управления текстовыми полями для ввода меток викторины (4-й столбец). Я преуспел в заполнении данных в datagrid через datatable. Теперь моя проблема заключается в том, что когда учитель вводит все метки и нажимает кнопку отправки, я хочу, чтобы мое приложение проверяло, осталось ли какое-либо из текстовых полей пустым. Если и до тех пор, пока все текстовые поля не будут заполнены, мой запрос INSERT (добавление меток в запрос базы данных) не должен выполняться. Это то, что я пробовал до сих порПроверка контроля texbox в gridview
int rowcount = DTUSNName.Rows.Count;//rows count of datatable
for (int i = 0; i < rowcount; i++)
{
if (dataGridView1.Rows[i].Cells[0].Value != null)
{
if (dataGridView1.Rows[i].Cells[1].Value != null)
{
var confirmResult = MessageBox.Show("Once the marks are added you wont be allowed to make changes. Do you want to proceed?","Confirm!!",MessageBoxButtons.YesNo);
if (confirmResult == DialogResult.Yes)
{
SqlCommand Test1query = new SqlCommand("INSERT INTO TblStudentReg (Test1, Quiz1) VALUES (@fld1,@fld2) WHERE [email protected] AND Sem = @sem AND [email protected] AND AcademicYr = @aca", con);
Test1query.Parameters.Add(new SqlParameter("@fld1", dataGridView1.Rows[i].Cells[0].Value.ToString()));
Test1query.Parameters.Add(new SqlParameter("@fld2", dataGridView1.Rows[i].Cells[1].Value.ToString()));
Test1query.Parameters.Add(new SqlParameter("@code", temp));//rollnum
Test1query.Parameters.Add(new SqlParameter("@sem", StaffMEDrp1.SelectedItem));subject code
Test1query.Parameters.Add(new SqlParameter("@cc", label3.Text));//subject code
Test1query.Parameters.Add(new SqlParameter("@aca", StaffMETxt1.Text));//academic yr
con.Open();
Test1query.ExecuteNonQuery();
con.Close();
}
else
{
}
}
else
{
MessageBox.Show("You have not set Quiz 1 Marks for USN : '" + usn + "'");
}
}
else
{
MessageBox.Show("You have not set Test 1 Marks for USN : '" + usn + "'");
}
}
Спасибо.
Итак, это генерирует любую ошибку/исключение или не распознает пустые значения и продолжает работать? –
Как насчет проверки свойств '.Text' является пустой или пустой строкой? –
@Harvery: Это отлично работает. Но мне нравится проверять, не весь ли элемент управления текстовым полем, прежде чем перейти к инструкции ti insert. –