从数据库中将 Datetimepicker 值显示到 Datetimepicker 框中

Showing Datetimepicker value into Datetimepicker box from database

您好,我有一个名为 tbl_data 的数据库,其中包含名称、地址和 'date' 类型的数据 示例:12/5/2021(数据这样保存在我的数据库中) 我使用 datetimepicker 工具箱将日期插入数据库, 现在我的数据库中有 1 个日期数据

我尝试将数据显示到 Datetimepicker 框中,想法是当我从 Datagridview 单击 1 个数据时,它显示 1 组数据(名称、日期、地址) 我的问题是 使用此代码我 already success 显示 nameaddress(这是一个字符串),如何我在这个 datetimepicker 工具箱 中显示 date? 谢谢

private void dgvData_DoubleClick(object sender, EventArgs e)
        {
            if(dgvData.CurrentRow.Index != -1)
            {
                Id = Convert.ToInt32(dgvData.CurrentRow.Cells[0].Value.ToString());
                txtName.Text = dgvData.CurrentRow.Cells[1].Value.ToString();
                txtAddress.Text = dgvData.CurrentRow.Cells[2].Value.ToString();
                //dateTimePicker1.Text = dgvData.CurrentRow.Cells[3].Value.ToString();
                // yea this code doesnt work because it convert to string but the toolbox was was not textbox but datetimepicker


            }
        }

如果网格使用 DataSource,您可以简化它。假设 tbl_data 用作网格的 DataSource,那么当双击网格行时,而不是“手动”更改文本框和日期时间选择器中的数据......您可以设置每个文本框和日期时间选择器的 DataBindings 属性.

这将在用户选择网格中的不同行时自动更改文本框和日期时间选择器中的文本...并且您的代码将不再需要“手动”将值设置为当前代码做。像……

txtName.DataBindings.Add("Text", tbl_data, "Name");
txtAddress.DataBindings.Add("Text", tbl_data, "Address");
dateTimePicker1.DataBindings.Add("Text", tbl_data, "Date");

其中,“姓名”为tbl_data中“姓名”栏的名称,“地址”栏名和“日期”栏名同理

此外,如果用户更改了其中一个文本框中的文本或更改了日期时间选择器值……那么网格将自动反映这些更改。