解决方案 »
- 请教大虾一个问题,急需!
- 请问一个关于WINFORM设置SQL语句的问题·!
- 如何判断当前窗口是否位于程序的最上层
- 50分求助 Access+C# 读取数据问题
- C#进来看
- 这样的按键问题如何解决呢!
- winform中的DataGrid如何使它在顯示數據時不要最後一行的空記錄?
- C# Microsoft.Office.Interop.Excel 修改Excel图表数据源
- VS.NET 2003 + MSDN2003 for .NET 中文版下载
- 帮忙看看,为什么XmlTextReader.IsEmptyElement判断不出来?
- 请问一个关于keypress简单的问题
- AFP文件是什么类型的文件,怎么截取afp文件特定字段
2.照着上述这种做法重新做一遍:
XXX.DataSource = null;
XXX.DataSource = ???;
XXX表示DataGridView的实例
???表示要绑定的数据源。
前提是DataTable只能增删改,不要重新new,否则你绑定的DataTable和你new过的DataTable就已经不是同一个对象了(它是引用类型的)
而且楼主纯靠拖控件的方式,完全没有后台代码的话,你所谓的"更新数据源"到底跟新的什么玩意,数据库表吗??
//更新按钮事件设置
private datatier dt = new datatier();//定义datatier类型的私有字段
private void btn_update_Click(object sender, EventArgs e)
{
//调用datatier对象的Update()方法,更改数据库中的信息
dt.Update(new Instance() { Name = txt_name_update.Text, phone = txt_phone_update.Text });
dataGridView1.DataSource = dt.Select();//更新dataGridView1控件中的信息
Clear();//清空TextBox控件中的文本
}//codego.net/1/1/1/
//自定义类型的私有字段设置
public void Update(Instance it)
{
SqlConnection sc = GetConnection();//调用GetConnections()方法,得到连接对象
try
{
sc.Open();//打开到数据库的连接
SqlCommand cmd = new SqlCommand(//创建SqlCommand对象
"update tb_friend set phone=@phone where names=@names", sc);
cmd.Parameters.Add("@names", SqlDbType.VarChar).Value = it.Name;//向SqlCommand对象添加参数
cmd.Parameters.Add("phone", SqlDbType.VarChar).Value = it.phone;//向SqlCommand对象添加参数
cmd.ExecuteNonQuery();//执行SqlCommand对象中的SQL命令
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
if (sc.State == ConnectionState.Open)//判断是否连接数据库
{
sc.Close();//如果已经连接则关闭连接
}
}
}
//插入按钮事件 private void button1_Click(object sender, EventArgs e)
{
//调用datatier对象的Add()方法向数据库添加数据
dt.Add(new Instance() { Name = txt_name_add.Text, phone = txt_phone_add.Text });
dataGridView1.DataSource = dt.Select();//更新dataGridView1控件中的信息
Clear();//清空TextBox控件中的文本
}
//调用dt类型的Add添加信息
public void Add(Instance it)
{
SqlConnection sc = GetConnection();//调用GetConnections()方法,得到连接对象
try
{
sc.Open();//打开到数据库的连接
SqlCommand cmd = new SqlCommand(//创建SqlCommand对象
"insert into tb_friend(names,phone) values(@names,@phone)", sc);
cmd.Parameters.Add("@names", SqlDbType.VarChar).Value = it.Name;//向SqlCommand对象添加参数
cmd.Parameters.Add("phone", SqlDbType.VarChar).Value = it.phone;//向SqlCommand对象添加参数
cmd.ExecuteNonQuery();//执行SqlCommand对象中的SQL命令
}
catch (Exception ex)//捕获异常
{
Console.WriteLine(ex.Message);
}
finally
{
if (sc.State==ConnectionState.Open)//判断是否连接数据库
{
sc.Close();//如果已经连接则关闭连接
}
}
}