问题描述
我的画面上有一个datagrid存在如下形式的数据,并将这些数据放在一个datatable里:RM社名活動日ACTIVITY_IDYOZAI_SORT_BY1,rm顧客顧客顧客2007/04/130000000281NULL2,rm顧客顧客顧客2007/04/020000000659NULL3,rm顧客顧客顧客2007/04/03000000066014,rm顧客顧客顧客2007/04/03000000066025,rm顧客顧客顧客2007/04/03000000066036,rm顧客顧客顧客2007/04/03000000066047,rm顧客顧客顧客2007/04/05000000066218,rm顧客顧客顧客2007/04/05000000066229,rm顧客顧客顧客2007/04/050000000662310,rm顧客顧客顧客2007/04/090000000655111,rm顧客顧客顧客2007/04/1000000006561我想做的操作是:将指针定位在第六条记录上,我将画面关掉后,重新打开后,指针仍将定位在第六条上,在这个datagrid中,我原先只是利用ACTIVITY_ID来定位,代码是这么写的:DimstrCondition()asStringDimiAsIntegerDimblnExistasBooleanstrCondition(1)=CStr(datagrid.Item(datagrid.CurrentRowIndex,3))Ifdatatable.Rows.Count>0ThenFori=0Todatatable.Rows.Count-1IfstrCondition(1)=CStr(datatable.Rows(i)(3))ThenblnExist=TrueExitForEndIfNextIfblnExistThendatagrid.UnSelect(0)datagrid.Select(i)datagrid.CurrentRowIndex=idatagrid.SetTopRow(i)'这是我重写datagrid的一个方法,用于定位指针的Elsedatagrid.Select(0)datagrid.CurrentRowIndex=0datagrid.SetTopRow(0)EndIfEndIf我现在想利用ACTIVITY_ID和YOZAI_SORT_BY这两个字段来进行定位,大家知道怎么写吗?
解决方案
解决方案二:
关闭前记录ACTIVITY_ID和YOZAI_SORT_BY对应的记录是第几条,如果可以排序同样需要记录排序规则再次打开后,找出ACTIVITY_ID和YOZAI_SORT_BY对应的positionthis.BindContext[this.datagrid1.DataSource].Position=position可以设置当前行位置