Датагрид не очистит - PullRequest
0 голосов
/ 18 мая 2019

Созданная мной сетка данных не позволит мне очистить значения. Когда я пытаюсь сделать datagrid.columns.clear();, он объединяет строки и не отображает ничего, кроме строк, и все равно не очищается.

Я пытался datagrid.items.clear();, поскольку я использовал Datagrid.items.add(); для добавления элементов в свою сетку данных. Я попытался datagrid.items.refresh(); и установил нулевой текст данных. Ничего из этого не работает.

public  void FillDataGridWithCustInfo()
        {



            CustomerDataGrid.Items.Clear();

            CustomerDataGrid.ItemsSource = null;

            CustomerDataGrid.Items.Refresh();


            int ArrayNum = 0;

            Int32 length = CustomerFirstName.Count;

            while (length > ArrayNum)
            {




                CustomerInformation TempCust = new CustomerInformation();
                TempCust.FirstName = CustomerFirstName[ArrayNum];
                TempCust.MiddleInital = CustomerMiddleInitial[ArrayNum];
                TempCust.LastName = CustomerLastName[ArrayNum];
                TempCust.TaxClass = CustomerTaxClass[ArrayNum];
                TempCust.Email = CustomerEmail[ArrayNum];

                CustomerDataGrid.Items.Add(TempCust);




                ArrayNum = ArrayNum + 1;

            }





        }

Я хочу, чтобы он очистил сетку данных перед заполнением, когда я закрываюсь из этого конкретного окна, но в настоящее время он берет все данные в сетке данных и просто добавляет к нему, чтобы я получал дубликаты всей информации.

1 Ответ

1 голос
/ 20 мая 2019

Я не уверен, что сетка данных использовалась настольным приложением, в веб-приложении у нас есть аналогичный вызов объекта как gridview, который показывает данные в виде таблицы.Если вы хотите принудительно очистить все строки, вы можете назначить пустую или фиктивную таблицу данных, что-то вроде приведенного ниже сделает свое дело.

     GridView1.DataSource = new DataTable();
     GridView1.DataBind();

Если вы хотите сохранить правильный заголовок столбца и просто хотите удалитьстрока, содержащая данные, убедитесь, что вы правильно структурируете свою таблицу данных ... примерно так:

        DataTable dt = new DataTable();
        dt.Columns.Add("Column1", Type.GetType("System.String"));
        dt.Columns.Add("Column2", Type.GetType("System.String"));
        GridView1.DataSource = dt;
        GridView1.DataBind();
...