以下是一个按钮单击事件的部分代码单击之后,错误指向textBoxReaderNo.Focus();并显示“未将对象引用设置到对象的实例”
将此句屏蔽之后,错误有指向textBoxReaderName.Text = DataSet1.Tables["reader"].Rows[0]["读者姓名"].ToString();
望高手解答
string ReaderNo = textBoxReaderNo.Text;
string connectionString = "Data Source=.;DataBase=tsglxt;Integrated Security=True";
SqlConnection sqlConnection1 = new SqlConnection(connectionString);
SqlCommand myCommand = sqlConnection1.CreateCommand();
myCommand.CommandText = "select * from reader where 读者编号='" + ReaderNo + "'";
SqlDataAdapter SqlDataAdapter1 = new SqlDataAdapter();
SqlDataAdapter1.SelectCommand = myCommand;
DataSet DataSet1 = new DataSet();
int n = SqlDataAdapter1.Fill(DataSet1, "reaser");
if (n == 0)
{
MessageBox.Show("无此读者编号", "信息提示");
textBoxReaderNo = null;
textBoxReaderNo.Focus();
}
else
{
//将该读者信息显示出来
textBoxReaderName.Text = DataSet1.Tables["reader"].Rows[0]["读者姓名"].ToString();
textBoxSex.Text = DataSet1.Tables["reader"].Rows[0]["读者性别"].ToString();
textBoxClass.Text = DataSet1.Tables["reader"].Rows[0]["读者类别"].ToString();
textBoxPaper.Text = DataSet1.Tables["reader"].Rows[0]["书证状态"].ToString();
myCommand.CommandText = "select * from borrow where 读者编号='" + ReaderNo + "'";
}
解决方案 »
- 如何在Web端向winform程序发送数据?
- 问个弱弱的问题
- 从文件导入数据到数据库的控件,给个思路。。。
- textbox newtxt = new textbox()要引入什么命名空间?
- 大家来帮忙看一下啥问题,头疼了,GOOLGE里又GOOGLE不到
- 在家来讨论一下!你们觉得最好的C#书是哪一本!
- *******超难的C#问题,寻求解决办法*************
- 有没有人做过类似浏览器地址栏的组合框啊?求教ing……
- 有大师帮我分析下这个类的作用吗?System.Runtime.Caching.SafeBitVector32
- C#如何连接MySQL数据库?
- 写不出来了.求代码示例
- C# textBox输入焦点问题
textBoxReaderNo.Focus();
都是null 还怎么Focus??
textBoxReaderNo.Focus();
textBoxReaderNo.Focus();--------------
都有是null了,当然要报错了。
在取DataSet之类的数据的时候,最好先做一个判断,比如:不是null且行数行大于0再取数据。
如果你用的是VB.net,那么你可以按照你的写法
textBoxReaderName.Text = DataSet1.Tables["reader"].Rows[0]["读者姓名"].ToString();
//这里读取table.name="reader"的table.因为之前赋予的名字不对。所以没有在该DataSet中找到正确的tableName的table.所以Assert.IsTrue(DataSet1.Tables["reader"]==null)
[/code]
对上面这个内容作下判断说明。
看返回的记录是什么吧