【问题标题】:C# Datagrid link to textbox errorC# Datagrid 链接到文本框错误
【发布时间】:2017-02-05 20:38:51
【问题描述】:

我对下面的代码块有问题,我使用代码块将数据网格上选定行的数据链接到文本框的目的属于。我将下面的代码添加到 Datagridview 内容中。

大多数情况下它可以工作,但是当您第一次单击数据网格上的“姓名”和“姓氏”单元格时,它不会将数据链接/传输到文本框。然而,“姓”之后的其他列效果很好。同样,当程序运行时,点击“姓名”和“姓氏”列后,它就是传输/链接。

是否知道为什么会发生这种情况或如何编辑代码?

private void dgvEkip_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if(e.RowIndex >= 0)
            {
                DataGridViewRow row = this.dgvEkip.Rows[e.RowIndex];
                txtEkipIsim.Text = row.Cells["Isim"].Value.ToString();                  //cell for "name"
                txtEkipSoyisim.Text = row.Cells["Soyisim"].Value.ToString();            //cell for "surname"
                dtpEkipDogum.Text = row.Cells["DogumTarihi"].Value.ToString();
                txtEkipTelefon.Text = row.Cells["Telefon"].Value.ToString();
                txtEkipEposta.Text = row.Cells["ePosta"].Value.ToString();
                cbEkipSehir.Text = row.Cells["Sehir"].Value.ToString();
                txtEkipAdres.Text = row.Cells["Adres"].Value.ToString();
                dtpEkipKayitTarihi.Text = row.Cells["KayitTarihi"].Value.ToString();
            }
        }

这里还有一个截图:

sample

非常感谢,努里。

【问题讨论】:

  • 单步执行时会发生什么?您是否尝试过在 Visual Studio 内的控制台窗口中打印出值(即Debug.Print(row.Cells["Isim"].Value.ToString())
  • 我不明白为什么它不起作用,但是,您可以将 DataGridView.SelectionMode 设置为 FullRowSelect 并使用 RowEnter 事件(不要忘记在填充 DataGridView 后调用此事件一次)。
  • 尝试订阅其他事件,如 RowSelected、RowHightlighted、CellFocused

标签: c# winforms datagrid textbox


【解决方案1】:

我想你应该在这里显示消息异常。也许我可以支持你:D 我看到你使用的类型工具不是文本框“dtpEkipDogum”,你可以检查一下

【讨论】:

    猜你喜欢
    • 2018-04-20
    • 1970-01-01
    • 2010-09-24
    • 2012-06-03
    • 2019-03-31
    • 1970-01-01
    • 2012-10-23
    • 2019-01-21
    • 1970-01-01
    相关资源
    最近更新 更多