На самом деле у меня есть две таблицы A и B, теперь я выберу значение из таблицы A и нажмите кнопку со стрелкой вниз, чтобы переместить выбранную строку из из таблицы A в таблицу B
Теперь впервые, когда я выбираю строку в таблице A и нажимаю кнопку со стрелкой вниз,
выбранную строку не удается добавить, но когда я пытаюсь выполнить ту же операцию, она работает нормально.
Вот мой фрагмент кода. Здесь в первый раз, когда я выбираю строку и нажимаю кнопку со стрелкой вниз, она появляется. вверх меня :: Строки не выбраны! и после этого работает отлично..
Код: Выделить всё
private void btnSelect_Click(object sender, EventArgs e)
{
dgvFormFieldsView.MultiSelect = false;
DataGridViewSelectedRowCollection selectedRows = dgvFormFieldsView.SelectedRows;
dgvFormFieldsView.ClearSelection();
if (selectedRows.Count == 0)
{
MessageBox.Show("No rows selected!", "Warning");
return;
}
for (int i = selectedRows.Count -1 ; i >= 0; i--)
{
string fieldLabel = null;
string fieldType = null;
string tabOrder = null;
tabOrder = (string)selectedRows[i].Cells[0].Value;
fieldLabel = (string)selectedRows[i].Cells[1].Value;
fieldType = (string)selectedRows[i].Cells[2].Value;
DataRow newRow = selectedFieldsTable.NewRow();
newRow["Field Name"] = fieldLabel;
newRow["Field Type"] = fieldType;
/*Temp Table*/
DataRow newRows = TempTable.NewRow();
newRows["Field Name"] = fieldLabel;
newRows["Field Type"] = fieldType;
if (!selectedFieldsTable.Rows.Contains(new System.Object[] { fieldType, fieldLabel }))
{
selectedFieldsTable.Rows.Add(newRow);
acc = selectedFieldsTable.Rows.Count;
temprow = TempTable.Rows.Count;
if (temprow < 5)
{
TempTable.Rows.Add(newRows);
//Console.WriteLine(counter);
currenttemptablecounter = currenttemptablecounter + 1;
Console.WriteLine(currenttemptablecounter);
}
if (temprow >= 5)
{
NextSelect.Enabled = true;
}
}
else
{
MessageBox.Show("Form Field :" + fieldLabel + " already selected", "PDF Perform Info");
}
}
dgvSelectedFieldsView.DataSource = TempTable;
dgvSelectedFieldsView.ClearSelection();
applyFormattingSelectedFieldsTable();
}
Подробнее здесь: https://stackoverflow.com/questions/151 ... in-c-sharp