C#编程中怎样解决未将对象引用设置到对象的实例的问题 DataRow dr = dt.Rows.Find(txtName.Text);出错了

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da... using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 修改
{

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

}
DataSet ds = new DataSet();
SqlDataAdapter sda;
DataRow dr;
private void Form1_Load(object sender, EventArgs e)
{
this.contactTableAdapter.Fill(this.通讯录DataSet.Contact);
SqlConnection con = new SqlConnection("server=localHost;database=通讯录;integrated security =true");
con.Open();
SqlCommand cmd = new SqlCommand("select * from Contact_Command ", con);
sda = new SqlDataAdapter();
sda.SelectCommand = cmd;

sda.Fill(ds, "Contact");
dataGridView1.DataSource = ds.Tables[0];

}

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{

txtName.Text=dataGridView1.SelectedCells[0].Value.ToString();
txtBirthday.Text=dataGridView1.SelectedCells[1].Value.ToString();
txtPhone.Text=dataGridView1.SelectedCells[2].Value.ToString();
txtMail.Text=dataGridView1.SelectedCells[3].Value.ToString();
txtAddress.Text=dataGridView1.SelectedCells[4].Value.ToString();

}

private void button1_Click(object sender, EventArgs e)
{

DataTable dt = ds.Tables["Contact"];
SqlDataAdapter sda = new SqlDataAdapter();
// sda.FillSchema(dt,SchemaType.Mapped);
DataRow dr = dt.Rows.Find(txtName.Text);

dr["姓名"] = this.txtName.Text.Trim();
dr["生日"] = this .txtBirthday.Text.Trim();
dr["电话"] = this.txtPhone.Text.Trim();
dr["邮箱"] = this.txtMail.Text.Trim();
dr["地址"] = this.txtAddress.Text.Trim();

SqlCommandBuilder cmdbuilder=new SqlCommandBuilder(sda);
sda.Update(dt);

}

}
}
展开
 我来答
百度网友97b5a46fa2
2013-12-18 · TA获得超过135个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:130万
展开全部
如果dr不是空的话,看一下txtName.Text的值,有可能是这个值有问题,导致找不到相应的数据列。
追问
具体的该如何做呢?谢谢!
追答
DataRow dr =   dt.Rows.Find(txtName.Text);这句打个断点,看一下就行了
hbbliyong
2013-12-18
知道答主
回答量:53
采纳率:0%
帮助的人:12.2万
展开全部
没有找到指定的行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
c449575105
2013-12-18 · 超过49用户采纳过TA的回答
知道小有建树答主
回答量:316
采纳率:0%
帮助的人:147万
展开全部
没找到指定的主键行。
追问
要怎么解决呢?我不太懂 谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式