Не присваивается значение строке c#

437
09 января 2017, 19:41

Собственно сам вопрос, есть строка которой должно быть присвоенно значение

object _id = kontr_dg.Rows[i].Cells["id"].Value; 

на выходе _id = null хотя правая сторона равна значению 2. Пробывал по другому

string _id = kontr_dg.Rows[i].Cells["id"].Value.toString();

тоже самое на выходе _id = null. Подскажите что делать?
кусок кода где эта строка:

MySqlDataAdapter sda = new MySqlDataAdapter("select id,name,inn,adress,type from kontr",con);
DataSet ds = new DataSet();
sda.Fill(ds);
kontr_dg.DataSource = ds.Tables[0];
for (int i = 0; i < kontr_dg.Rows.Count; i++)
{
    //Название с ОПФ
    object _id = kontr_dg.Rows[i].Cells["id"].Value;
    string name_opf = core.kontr_name_opf(_id.ToString());
    kontr_dg.Rows[i].Cells["name"].Value = name_opf.ToString();
}
Answer 1

Проблема была в том что была возможность добавления новой строки. из-за этого в конце цикла присваивалось значение null.

Верный ответ

kontr_dg.AllowUserToAddRows = false;

Запрет на добавление новой строки

Answer 2

Если мои предположения верны, то дабы Вы не теряли время, пока я попаду на работу, попробуйте вместо

object _id = kontr_dg.Rows[i].Cells["id"].Value; использовать такую конструкцию:

DataGridViewRow viewRow = kontr_dg.Rows[i]; DataRowView rw = (DataRowView)viewRow.DataBoundItem; DataRow row = rw.Row; object _id = row["id"].Value;

READ ALSO
Длинный url (get-запрос) в file_get_contents

Длинный url (get-запрос) в file_get_contents

ЗдравствуйтеРаботаю с vk API, отправляю сообщения обыкновенным методом messages

584
Call to undefined function import_request_variables()

Call to undefined function import_request_variables()

Сервер с PHP 53 перешел на PHP 5

566