如何使用c#将数据网格视图中的选定行显示到文本框中

本文关键字:显示 文本 数据 数据网 视图 网格 何使用 | 更新日期: 2023-09-27 18:07:32

我将所有用户注册存储在user_reg数据库表上,并将它们导入数据网格视图,我使用单独的窗口表单来输入数据。当数据从数据库导入到数据网格视图时,我的名字列显示为一个(名字、中间名和姓氏连接在一起)。我的问题是,当我试图从数据网格视图导入数据到我的窗口窗体的名称列没有正确显示在windows窗体上(它显示为一个,但我的窗体有3个单独的文本框。)我已经这样做了=>

private void Update_Users_Load(object sender, EventArgs e)
    {
        long totalRow = 0;

        MySqlDataAdapter sda = new MySqlDataAdapter("SELECT `user_reg`.`user_id`, `user_reg`.`first_name`, `user_reg`.`middle_name`, `user_reg`.`last_name`, `user_reg`.`address`, `user_reg`.`sex`, `user_reg`.`nic_number`, `user_reg`.`contact_number`, `user_reg`.`email_address`, `user_reg`.`user_type` FROM `sarasavi_library`.`user_reg` WHERE `user_id`='" + borrower_id + "';", conn);
        DataSet ds = new DataSet();
        sda.Fill(ds, "user_reg");
        totalRow = ds.Tables["user_reg"].Rows.Count - 1;
        txt_uid.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(0).ToString();
        txt_fname.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(1).ToString();
        txt_mname.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(2).ToString();
        txt_lname.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(3).ToString();
        txt_address.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(4).ToString();
        com_sex.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(5).ToString();
        txt_nic.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(6).ToString();
        txt_contact.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(7).ToString();
        txt_email.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(8).ToString();
        com_memtype.Text = ds.Tables["user_reg"].Rows[0].ItemArray.GetValue(9).ToString();
    }

但我的问题是,它没有运行,但给我错误

名称borrower_id在当前上下文中不存在

borrower_id是来自数据网格视图的名称,我无法找出一种方法来包含它。有什么想法吗?为了更好地理解,我将附上一个图像截图

如何使用c#将数据网格视图中的选定行显示到文本框中

名称borrower_id在当前上下文中不存在。

这个异常表示编译器不知道"borrower_id"是什么。这是因为(基于代码片段)在使用它之前从未在任何地方声明过它。我看到的唯一实例是当你用它来构造你的查询。

除非"borrower_id"是一个属性(这就是为什么你在代码片段中省略了它的声明),你需要在使用它之前声明它,以便编译器知道它是什么。