如何在这里刷新我的datagridview我的代码在datagridview中查看我的数据,但每次输入新数据时我都要重新打开我的程序以查看新数据
using (IDbConnection dbconnection = new SQLiteConnection(conn))
{
dbconnection.Open();
SQLiteDataAdapter dataadapter = new SQLiteDataAdapter("SELECT * FROM tbl_Sample",conn);
DataSet ds = new System.Data.DataSet();
dataadapter.Fill(ds,"Info");
dataGridView1.DataSource = ds.Tables[0];
}
答案 0 :(得分:0)
如果您使用DataSet
或DataTable
作为DataGridView
的数据源,可以尝试以下方法:
private void LoadDataToDgv()
{
using (IDbConnection dbconnection = new SQLiteConnection(conn))
{
dbconnection.Open();
SQLiteDataAdapter dataadapter = new SQLiteDataAdapter("SELECT * FROM tbl_Sample",conn);
DataSet ds = new System.Data.DataSet();
dataadapter.Fill(ds,"Info");
dataGridView1.DataSource = ds.Tables[0];
}
}
然后在将新数据添加到表后,获取新数据集并使用新行重新加载网格:
//Code to add new data to Sql Table
LoadDataToDgv();
但是我建议你为绑定到网格的项目类型创建一个Class(如果你还没有创建一个),并使用BindingList来做同样的事情。 This问题很好地描述了如何使用它将它绑定为DataGridViews的源。
答案 1 :(得分:0)
每当我将新数据放入数据库时,我都会使用刷新功能,因此datagridview将刷新我输入的每个新数据
#include<stdio.h>
#include<unistd.h>
#include<time.h>
void handler(int){
const char msg[] = "handler\n";
write(0, msg, sizeof(msg));
}
extern "C" void restorer();
asm volatile("restorer:mov $15,%rax\nsyscall");
struct kernel_sigaction {
void (*k_sa_handler) (int);
unsigned long sa_flags;
void (*sa_restorer) (void);
unsigned long sa_mask;
};
struct kernel_sigaction act{handler};
timespec ts{10,0};
int main(){
act.sa_flags=0x04000000;
act.sa_restorer=&restorer;
asm volatile("\
mov $13,%%rax\n\
mov %0,%%rdi\n\
mov %1,%%rsi\n\
mov %2,%%rdx\n\
mov $8,%%r10\n\
syscall\n\
"::"i"(7),"p"(&act),"p"(0):"rax","rcx", "rdi","rsi","rdx","r8", "r9", "r10", "r11");
nanosleep(&ts,0);
}