Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > dataGridView Update


Автор: D_F_V 2.4.2007, 10:01
Код


public void UpdateGrid()
        {
            ds.Tables["Клиенты"].Clear();
            DataAdapter.Fill(ds, "Клиенты");
            dataGridView1.Refresh();
        }





Подскажите как сделать правильно... если вызываю этот метод кнопкой из формы - все работает, а через указатель (из другой формы) не получается... метод вызывается а форма таблицы не обновляется....  smile 

Автор: ivashkanet 2.4.2007, 13:59
D_F_V, что именно не обновляется? dataGridView1?
Разницы нет никакой, обновляешь ты сам грид, либо через ссылку с другой формы.
Может ты не правильно получаешь ссылку? Можно код получения ссылки глянуть?

P.S. По идее тебе не нужно вызывать рефреш. DataSet должен сгенерить событие когда он обновился, dataGridView1 его автоматом подхватывает и перерисовывает.

Автор: D_F_V 3.4.2007, 01:36
ivashkanet,  не обновляется именно форма dataGridView1, с указателем ошибки вроде нет....
метод  рефреш. DataSet убрал... 

Код


// ФОРМА 1.

public void UpdateGrid()
    {
         ds.Tables["Клиенты"].Clear();
         DataAdapter.Fill(ds, "Клиенты");
     }

 private void buttonAddClient_Click(object sender, EventArgs e)
      {
          AddClient frmAddClient = new AddClient(this);
          frmAddClient.ShowDialog();
          UpdateGrid();  // так тоже не обновляет...
                                
      }

 private void buttonOK_Click(object sender, EventArgs e)
        {
            UpdateGrid();  // так  работает...
        }


// ФОРМА 2.

public partial class AddClient : Form
    {
        private Clients pParentForm;     
        .........
     }

public AddClient(Clients link)
      {         
            InitializeComponent();
            pParentForm = link;
       }

private void buttonOK_Click(object sender, EventArgs e)
     {     
        ............
        pParentForm.UpdateGrid();          // Вызов метода... вроде все правильно но не работает... 
        this.Close();                                  
      }




Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)