Место общения программистов C#
Anonymous
Как обновить выполнение DataGridView в реальном времени?
Сообщение
Anonymous » 06 мар 2026, 06:03
My DataGridView отображает информацию, введенную в другой системе. Когда пользователь вставляет, обновляет или удаляет любую информацию, DataGridView должен обновляться прямо сейчас.
Я думал об использовании рекурсивного метода или фона потока, но это не помогло.
Мой код:
Код: Выделить всё
private void Andon_Load(object sender, EventArgs e)
{
LoadGrid();
}
private void LoadGrid()
{
DataTableWorkCall cdtwc = new DataTableWorkCall();
DataTable dtPBList = new DataTable();
dtPBList = cdtwc.CreatePendingWorkCall();
DataTableWorkCall.GetDataTableNew = dtPBList;
if (DataTableWorkCall.GetDataTableNew != DataTableWorkCall.GetDataTableOld)
{
if (DataTableWorkCall.GetDataTableNew.Rows.Count > 0)
{
DataTableWorkCall.GetDataTableOld = DataTableWorkCall.GetDataTableNew;
if (this.WindowState == FormWindowState.Minimized)
this.WindowState = FormWindowState.Normal;
DataView dv = new DataView(DataTableWorkCall.GetDataTableNew);
dv.Sort = "workCallOpenDate DESC";
dgvAndon.DataSource = dv;
lblRefreshDate.Text = "Atualizado em: " + DateTime.Now;
existData = true;
}
else
{
if (this.WindowState == FormWindowState.Normal)
this.WindowState = FormWindowState.Minimized;
music.Clear();
music.StopSound();
lblRefreshDate.Text = "Atualizado em: " + DateTime.Now;
existData = false;
}
this.Activate();
//LoadGrid();
}
else
{
if (this.WindowState == FormWindowState.Normal)
this.WindowState = FormWindowState.Minimized;
lblRefreshDate.Text = "Atualizado em: " + DateTime.Now;
existData = false;
LoadGrid();
}
}
Это не работает, может кто-нибудь мне помочь?
Подробнее здесь:
https://stackoverflow.com/questions/178 ... -execution
1772766190
Anonymous
My DataGridView отображает информацию, введенную в другой системе. Когда пользователь вставляет, обновляет или удаляет любую информацию, DataGridView должен обновляться прямо сейчас. Я думал об использовании рекурсивного метода или фона потока, но это не помогло. Мой код: [code]private void Andon_Load(object sender, EventArgs e) { LoadGrid(); } private void LoadGrid() { DataTableWorkCall cdtwc = new DataTableWorkCall(); DataTable dtPBList = new DataTable(); dtPBList = cdtwc.CreatePendingWorkCall(); DataTableWorkCall.GetDataTableNew = dtPBList; if (DataTableWorkCall.GetDataTableNew != DataTableWorkCall.GetDataTableOld) { if (DataTableWorkCall.GetDataTableNew.Rows.Count > 0) { DataTableWorkCall.GetDataTableOld = DataTableWorkCall.GetDataTableNew; if (this.WindowState == FormWindowState.Minimized) this.WindowState = FormWindowState.Normal; DataView dv = new DataView(DataTableWorkCall.GetDataTableNew); dv.Sort = "workCallOpenDate DESC"; dgvAndon.DataSource = dv; lblRefreshDate.Text = "Atualizado em: " + DateTime.Now; existData = true; } else { if (this.WindowState == FormWindowState.Normal) this.WindowState = FormWindowState.Minimized; music.Clear(); music.StopSound(); lblRefreshDate.Text = "Atualizado em: " + DateTime.Now; existData = false; } this.Activate(); //LoadGrid(); } else { if (this.WindowState == FormWindowState.Normal) this.WindowState = FormWindowState.Minimized; lblRefreshDate.Text = "Atualizado em: " + DateTime.Now; existData = false; LoadGrid(); } } [/code] Это не работает, может кто-нибудь мне помочь? Подробнее здесь: [url]https://stackoverflow.com/questions/17859251/how-to-update-datagridview-real-time-execution[/url]