Итак, я обнаружил, что можно получить связанную строку datatable для строки datagridview, однако я пытаюсь сделать обратное. У меня есть следующий рабочий код, который сортирует строки данных в массиве, отсортированном по дате. Затем я выполняю некоторую логику, чтобы заполнить значение, основанное на количестве доступного количества. Когда доступное количество меньше требуемого количества, я хочу покрасить строку datagrid, чтобы пользователь знал о ситуации. Как я могу обратиться к правильной строке datagridview в этот момент?Получить строку datagridview из строки datatable
Обновление для ясности: это winform с использованием datagridview. Показанный код находится на кнопке «Match All». Его цель - сопоставить значение Qty для переноса с ячейки Qty Required до доступного количества для элемента строки.
Dictionary<string, float> availableQtys = new Dictionary<string, float>();
DataView view = new DataView(dtStaged);
DataTable distinctItems = view.ToTable(true, "Item");
for (int i = 0; i < distinctItems.Rows.Count; i++)
{
availableQtys[distinctItems.Rows[i].Field<string>(0)] =
Controller.Instance.GetAvailableQty(distinctItems.Rows[i].Field<string>(0), ddl_SourceLocation.SelectedValue.ToString());
}
DataRow[] rowList = dtStaged.Select("", "Req Ship ASC");
foreach (DataRow row in rowList)
{
if (ddl_SourceLocation.SelectedValue.ToString().Trim() == row["Dest Site"].ToString().Trim())
continue;
if (availableQtys[row["Item"].ToString()] < Convert.ToSingle(row["Qty Required"]))
{
row["Qty to Transfer"] = availableQtys[row["Item"].ToString()];
availableQtys[row["Item"].ToString()] = 0.0f;
warnUser = true;
// HERE I want to set the color of the matching data grid row
}
// some other stuff
}
Вы утверждаете, что мое точное желание - получение связанной строки datagridview из строки данных - невозможно? – CodenameCain