用过Xtragrid的大侠帮帮忙!!
'定义一个下拉表格
Private WithEvents devGoods As New DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit
----------------------------------
Private Sub form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
....
'绑定货品表dt到这个下拉表格中,dt有三列:id,code,name
'绑定后,devGoods有若干行
devGoods.Datasource=dt
devGoods.DispalyMember= "code "
devGoods.ValueMember= "id "
....
'将devGoods下拉表格绑定到主表格的货品代号列,以便从devGoods中选择货品填入主表格GridView1中
GridView1.Columns( "货品代号 ").ColumnEdit=devGoods
End Sub
上面的代码就能轻易做到选择、输入货品的功能。但是,我怎么找也找不到devGoods的选择行的行序号!!
比如,devGoods有10条或品记录,我用鼠标选择第三条货品,那么该货品的id、code会正确地填入主表格GridView1的当前行“货品代号”列中。但是却没办法找到该货品的name,原因是devGoods.View.FouceRowHandler始终等于0,应该等于2才对!!
请各位大侠帮帮忙,怎样才能找到在devGoods中选择的是第几行?
谢谢!
[解决办法]
补充一点,在devGoods 的EditValueChanging事件中获取该值:
Private Sub devGoods_EditValueChanging(ByVal sender As Object, ByVal e As DevExpress.XtraEditors.Controls.ChangingEventArgs) Handles devGoods.EditValueChanging
Dim RowView As DataRowView
RowView = devGoods.GetDataSourceRowByKeyValue(e.NewValue)
RowView( "name ")就是你想要的值