从数据表填充文本框 [英] fill text box from data table

查看:88
本文介绍了从数据表填充文本框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 DataTable dt3 =  new  DataTable(); 
string CS = ConfigurationManager.ConnectionStrings [ DBCS]的ConnectionString。
使用(SqlConnection con = new SqlConnection(CS))
{
string sqlstr2 = select max(catId)from tblcatProducts;
使用(SqlDataAdapter dr2 = new SqlDataAdapter(sqlstr2,CS))
{

dr2.Fill(dt3);
txtCatIdProducts.Text = dt3.ToString();

解决方案

这个:

 dt3.ToString(); 



只会给你整个DataTable的字符串表示,类似于System.Data.DataTable。其中没有任何值。



由于您要查询单个值,它将在第0行第0列:

 txtCatIdProducts.Text = dt3.Rows [ 0 ] [ 0 ] .ToString(); 



每当查询单个值时,你应该使用 ExecuteScalar [ ^ ]正是为了这个而不是SqlDataAdapter。


DataTable dt3 = new DataTable();
            string CS = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
            using (SqlConnection con = new SqlConnection(CS))
            {
                string sqlstr2 = "select max(catId) from tblcatProducts";
                using (SqlDataAdapter dr2 = new SqlDataAdapter(sqlstr2, CS))
                {

                    dr2.Fill(dt3);
                    txtCatIdProducts.Text = dt3.ToString();

解决方案

This:

dt3.ToString();


will just give you the String-representation of the whole DataTable, something like "System.Data.DataTable". Not any of the values therein.

Since you're querying for a single value, it will be in row 0, column 0:

txtCatIdProducts.Text = dt3.Rows[0][0].ToString();


Whenever querying for single values you should use ExecuteScalar[^] which is meant for exactly that, instead of an SqlDataAdapter.


这篇关于从数据表填充文本框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆