【问题标题】:Obtaining values from DevExpress GridControl从 DevExpress GridControl 获取值
【发布时间】:2013-02-18 18:39:52
【问题描述】:

当我点击该行的单元格时,如何将数据填充到文本字段中?

对于标准 DataGridView,我可以使用以下代码

void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
    txtguard_id.Text = dataGridView1.SelectedRows[0].Cells["GuardId"].Value.ToString();
    DateHired.Value = (DateTime)dataGridView1.SelectedRows[0].Cells["DateHired"].Value;
    Firstname.Text = dataGridView1.SelectedRows[0].Cells["FirstName"].Value.ToString();
    Middlename.Text = dataGridView1.SelectedRows[0].Cells["MiddleName"].Value.ToString();
    Lastname.Text = dataGridView1.SelectedRows[0].Cells["LastName"].Value.ToString();
    txtguard_street.Text = dataGridView1.SelectedRows[0].Cells["Street"].Value.ToString();
    txtguard_brgy.Text = dataGridView1.SelectedRows[0].Cells["Barangay"].Value.ToString();
    txtguard_procity.Text = dataGridView1.SelectedRows[0].Cells["ProvinceorCity"].Value.ToString();
    txtguard_age.Text = dataGridView1.SelectedRows[0].Cells["Age"].Value.ToString();
    txtguard_bday.Value= (DateTime)dataGridView1.SelectedRows[0].Cells["Birthdate"].Value;
    txtguard_male.Checked = (bool)dataGridView1.SelectedRows[0].Cells["Gender"].Value;
    txtguard_female.Checked = (bool)dataGridView1.SelectedRows[0].Cells["Gender"].Value;
}

但在 GridControl 中我不知道该怎么做...

【问题讨论】:

标签: c# winforms devexpress xtragrid


【解决方案1】:

借助 DevExpress XtraGrid,您几乎可以使用相同的方法:

using DevExpress.XtraGrid.Views.Grid;
//...
gridView1.RowClick += gridView_RowClick;
//...
void gridView_RowClick(object sender, RowClickEventArgs e) {
    object id = ((GridView)sender).GetRowCellValue(e.RowHandle, "ID");
    testBoxId.Text = id.ToString();
    //...
}

using DevExpress.XtraGrid.Views.Grid;
//...
gridView1.RowCellClick += gridView_RowCellClick;
//...
void gridView_RowCellClick(object sender, RowCellClickEventArgs e) {
    object id = ((GridView)sender).GetRowCellValue(e.RowHandle, "ID");
    testBoxId.Text = id.ToString();
    //...
}

相关帮助文章:Obtaining and Setting Cell Values

更新:
请注意,如果启用数据编辑并且 ColumnViewOptionsBehavior.EditorShowMode 属性设置为 MouseDown,则单击行单元格时不会触发这些事件。

您可以使用 GridView.OptionsBehavior.Editable 属性禁用视图的就地编辑。

【讨论】:

  • 我想在单击单元格时填充文本框..如何在网格控件 RowCellCLick 中执行此操作..请帮助我..
  • @JMOlesco 嗯...我的代码很清楚...只需将您从网格单元格收到的值传递给文本框 Text 属性
  • 我试过了,但它不起作用.. private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) { radTextBox1.Text = ((GridView)sender).GetRowCellValue(e .RowHandle, "Customer_Id").ToString();它没有填充我使用过的分配文本框...(Customer_Id 是数据库部分)
  • @JMOlesco 我相信您应该在这种情况下使用 gridView1.OptionsBehavior.Editable = false。
  • 仍然,它对我不起作用..请发布一些关于如何做到这一点的代码..我想要的是当我点击单元格时,它会在不同的文本字段中填充数据,如“ NAME, ADDRESS" 此代码适用于 datagridview textbox1.Text = dataGridView1.SelectedRows[0].Cells["Street"].Value.ToString();但是在gridcontrol中如何做到这一点请帮助我
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多