Как мне отредактировать DatagridView, чтобы внести изменения в форму? - PullRequest
0 голосов
/ 27 июня 2019

Просмотр данных с привязкой источника данных commitedit () не работает.

Я использую источник данных для списка привязок <> / binding для своего обзора данных. Я могу отредактировать представление данных, но не могу зафиксировать изменения в представлении формы. Я использую commitedit (), чтобы внести изменения в gridview. Но это не работает. Я не могу вносить изменения в сетку данных программно или в кеше.

private void RichTextBox1_Enter(object sender, EventArgs e) {
    private BindingList < string > attrNew = new BindingList < string > ();
    attrNew.AllowEdit = true;
    attrNew.AllowNew = true;
    // attributes.CopyTo(0,attrNew.ToArray(),0,attributes.Count());
    attributesBindingSource.DataSource = (from b in attrNew.Distinct().Select(a = >a.Split(new string[] {
        " "
    },
    StringSplitOptions.RemoveEmptyEntries))
    select new {
        Field = b.GetValue(0) as string,
        Attributes = b.GetValue(1) as string,
        Value = b.GetValue(2) as string
    }).ToList();

    dataGridView1.DataSource = attributesBindingSource;

    dataGridView1.EditMode = Lab.DataGridViewEditMode.EditOnEnter;
    dataGridView1.ReadOnly = false;
    while (count < dataGridView1.Rows.Count) {
        dataGridView1.Rows[count].Cells["Field"].ReadOnly = false;
        dataGridView1.Rows[count].Cells["Attributes"].ReadOnly = false;
        dataGridView1.Rows[count].Cells["Value"].ReadOnly = false;

        count++;
    }
}

// This event handler manually raises the CellValueChanged event
// by calling the CommitEdit method.
void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e) {
    dirty = true;
    newValue = dataGridView1.EditingControl.Text;
    if (dataGridView1.IsCurrentCellDirty) {
        dataGridView1.CommitEdit(Lab.DataGridViewDataErrorContexts.Commit);
    }

}

Ожидайте, что сетка данных будет отражать изменения в виде сетки при редактировании.

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