Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Редактирование записей DataGridView 
:(
    Опции темы
tatbesidovska
  Дата 12.5.2008, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



Добрый день.
Такая ситуация: Есть DataGridView, форма с textBox-ами, стою на записи в DataGridView, надо чтобы после нажатия на кнопку "Добавить" выходила форма, заполненная данными из записи на которой стою. Далее, редактирование, сохранение, обновление БД. Заранее всем спасибо за помощь.
PM MAIL   Вверх
akizelokro
Дата 12.5.2008, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



обработчик нажатия кнопки Добавить
{
  NewRecordForm _newform = new NewRecordForm();
  (_newform.Controls["твойtextbox"] as TextBox).Text = dataGridView1[idcolumn.Index, dataGridView1.CurrentRow.Index].Value;
  .....
  if(utp.ShowDialog()==DialogResult.OK)
  {
     dataGridView1[idcolumn.Index, dataGridView1.CurrentRow.Index].Value = (_newform.Controls["твойtextbox"] as TextBox).Text;
     ....
     EndEdit();
     Update();
  }
}



Это сообщение отредактировал(а) akizelokro - 12.5.2008, 16:10


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
tatbesidovska
Дата 13.5.2008, 08:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



idcolumn.Index- что вместо этого надо написать???
PM MAIL   Вверх
akizelokro
Дата 13.5.2008, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



индекс столбца, из которого ты берешь значение


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
tatbesidovska
Дата 13.5.2008, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



это понятно, меня интересут запись индекса
PM MAIL   Вверх
akizelokro
Дата 13.5.2008, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



<название_столбца_в_DataGridView>.Index
название ты можешь посмотреть через визуальный редактор элемента управления при выборе пункта "Edit columns" в таблице свойств (справа) интересующего тебя столбца.
или через свойство Collection (если память не изменяет) окна свойств




--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
tatbesidovska
  Дата 13.5.2008, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



Код

  private void button3_Click(object sender, EventArgs e)
        {
           Form3 fr = new Form3();

           fr.comboBox1.Text = dataGridView1[названиеСуднаDataGridViewTextBoxColumn.Index,dataGridView1.CurrentRow.Index].Value;

            if (fr.ShowDialog() == DialogResult.OK)
            {

                dataGridView1[названиеСуднаDataGridViewTextBoxColumn.Index, dataGridView1.CurrentRow.Index].Value = fr.comboBox1.Text;

                
                Update();
            }



        }
        }



dataGridView1[названиеСуднаDataGridViewTextBoxColumn.Index,dataGridView1.CurrentRow.Index].Value;    подчеркивается и пишет:    Cannot implicitly convert type 'object' to 'string'. An explicit conversion exists (are you missing a cast?)    


Это сообщение отредактировал(а) tatbesidovska - 13.5.2008, 15:38
PM MAIL   Вверх
akizelokro
Дата 13.5.2008, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



Код

fr.comboBox1.Text = dataGridView1[названиеСуднаDataGridViewTextBoxColumn.Index,dataGridView1.CurrentRow.Index].Value.ToString();

угу. если у тебя столбец может содержать значения NULL, то тебе нужно добавить проверку перед этим присвоением.
и еще поправлюсь

Код

dataGridView1[названиеСуднаDataGridViewTextBoxColumn.Index, dataGridView1.CurrentRow.Index].Value = fr.comboBox1.Text.Trim();

чтобы обрезать начальные и конечные пробелы


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
tatbesidovska
Дата 14.5.2008, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



Да, теперь все работает, но почему то не обновляются данные в БД, в чем проблемка, подскажите!
PM MAIL   Вверх
tatbesidovska
  Дата 14.5.2008, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



Все, заработало! Это моя шляпа была, akizelokro, большое спасибо  тебе за помощь в освоении материала.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0488 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.