2013-02-18 79 views
-3

如何在我单击行的单元格时将数据填充到文本字段中?从DevExpress GridControl中获取值

对于标准的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我不知道该怎么做了以下...

+0

您能否详细说明您想要填充哪个文本框?它是编辑窗体还是页面中的任何文本框?此外,devexpress网站上也有各种论坛和帮助。 – 2013-02-18 20:34:12

+0

http://www.devexpress.com/Support/Center/p/E2202.aspx – 2013-02-18 20:35:26

+0

http://www.devexpress.com/Support/Center/p/Q321001.aspx – 2013-02-18 20:36:10

回答

-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

UPDATE:
注意,这些事件不会对行单元格点击的时候,如果数据编辑已启用,ColumnViewOptionsBehavior.EditorShowMode属性设置为的MouseDown火灾。

您可以使用GridView.OptionsBehavior.Editable属性在位置上编辑视图。

+0

我想填充文本框,每当cell被点击.. 如何做到这一点在网格控制RowCellCLick .. 请帮我.. – 2013-02-19 11:12:19

+0

@JMOlesco嗯...我的代码是非常清楚的......只是将您从网格单元格收到的值传递给文本框文本属性 – DmitryG 2013-02-19 11:41:49

+0

我尝试过,但它不工作.. 私人无效gridView1_RowCellClick(对象发件人,DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs E) { radTextBox1.Text =((GridView的)发送器).GetRowCellValue(例如RowHandle,“Customer_Id”)。ToString(); } 它不会弹出已分配的文本框我用... (Customer_Id是数据库部分) – 2013-02-19 11:56:57