Как обновить содержимое DataGridView, представленного в другой форме после привязки данных - PullRequest
0 голосов
/ 02 марта 2020

У меня есть WordAddin, и у него есть n форм. Ниже приведены 2 формы

  1. TaskPane
  2. RibbonPane

На RibbonPane есть кнопка, при щелчке которой мне нужно добавить строки в DataGridView, закрепленные внутри TabPane содержится в TaskPane.

Но для данных в представлении сетки данных (или текстовом поле) установлено значение, заданное в конструкторе TaskPane. В то время как мое требование к ButtonClick, содержащемуся в RibbonPane, мне нужно обновить содержимое DataGridView (то есть, добавить строки)

 //Ribbon.cs
 public void btnSubmitClick(object sender, EventArgs e)
 {
   var obj = new TaskPane();
   obj.AddRowsToDGV(new List<Tuple<string, string>>()
   {
        new Tuple<string,string>("Google","CEO");
   });
 };


 //TaskPane.cs
  public TaskPane()
  { 
   //below reflects in UI
   dgEntitiesForReview.Rows.Add("Static","ForTesting"); 
  }

  public AddRowsToDGV(List<Tuple<string, string>> entities =null)
  { 
       //dgEntitiesForReview - DataGridView docked inside TabPage/TabControl
        if (entities!= null)
        {
            foreach (var entity in entities)
            {
                dgvEntities.Rows.Add(entity.Item1, entity.Item2);
            }
            dgEntitiesForReview.ClearSelection();
            dgEntitiesForReview.Refresh();
        }
 }

Если я добавлю часы быстрого просмотра dgEntitiesForReview.Rows.Count, он будет обновлен, но то же самое не отражается в пользовательском интерфейсе?

Обратите внимание, я проверил, поместив простое текстовое поле вместо DataGridView, но та же проблема. Текст обновляется при отладке, но не отражается в пользовательском интерфейсе

Спасибо!

1 Ответ

0 голосов
/ 02 марта 2020

В вашем foreach l oop в методе AddRowsToDGV вы используете правильный вид сетки? Вы добавляете строки в dgvEntities и проверяете количество строк в dgEntitiesForReview

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...