У меня проблема с моей DataGrid, связанной с выражением LINQ.
На самом деле две DataGrid связаны с одной и той же таблицей SQL, используя один и тот же DataContext.
Когда я редактирую существующие строки в одной или другой сетке, изменения отражаются в другой сетке, и наоборот, как и ожидалось.
Но когда я вставляю запись или удаляю запись в одной сетке, изменения не отражаются в другой сетке. Это как новая строка в состоянии, когда мое выражение LINQ не принимает такие изменения.
Мне нужно сохранить изменения в базе данных, прежде чем другая сетка сможет "увидеть" изменения.
Есть ли в любом случае для LINQ объекта результата можно уведомить об изменениях строки вставки / удаления строки?
Вот мой код:
public partial class Form1 : Form
{
GMR_DEVEntities CTX;
public Form1()
{
InitializeComponent();
CTX = new GMR_DEVEntities();
dataGridView1.AutoGenerateColumns = true;
dataGridView2.AutoGenerateColumns = true;
this.dataGridView1.Columns.Clear();
this.dataGridView2.Columns.Clear();
}
private void btnLoadGrid1_Click(object sender, EventArgs e)
{
var Data = from dd in CTX.tblConfigs select dd;
this.dataGridView1.DataSource = Data;
}
private void btnLoadGrid2_Click(object sender, EventArgs e)
{
var Data = from dd in CTX.tblConfigs select dd;
this.dataGridView2.DataSource = Data;
}
private void btnSave_Click(object sender, EventArgs e)
{
CTX.SaveChanges();
}
}