找回密码
 立即注册

QQ登录

只需一步,快速开始

chenf1980

论坛元老

41

主题

147

帖子

9349

积分

论坛元老

积分
9349

活字格认证

chenf1980
论坛元老   /  发表于:2011-8-4 13:29  /   查看:10266  /  回复:14

如图所示,到了这里出错了,设置第0行,结果单步往下走,出现了下面的错误。


然后看MultiRow,确实存在2行数据

并且DataSource也是对的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

14 个回复

正序浏览
robert
金牌服务用户   /  发表于:2011-8-5 11:53:00
15#
解决了就好
回复 使用道具 举报
chenf1980
论坛元老   /  发表于:2011-8-5 11:00:00
14#
我一行一行的删除代码,最终解决了这个问题,不是这里代码的问题,是别的地方的事件跟这里发生了冲突。
回复 使用道具 举报
robert
金牌服务用户   /  发表于:2011-8-5 09:11:00
13#
请问你一楼给出的代码是在什么时机调用的?Form的构造函数?FormLoaded事件处理函数?如果是构造函数请尝试调整到FormLoaded的事件处理函数中,看是否解决问题。
回复 使用道具 举报
chenf1980
论坛元老   /  发表于:2011-8-4 17:51:00
12#
版主,你想一下啊,我是要在既有的multirow上面追加一行,所以取得datasouce之后,肯定要在rowcount这个位置上追加一行data,然后绑定,你认为呢?
回复 使用道具 举报
barrylei
中级会员   /  发表于:2011-8-4 17:26:00
11#

回复 10# chenf1980 的帖子

你的Me.RowCount指的是MultiRow的RowCount吗?
在MultiRow,Row的Index是从0开始的,RowCount-1是最大的RowIndex,
为什么要把RowCount赋值给CurrentRowIndex,如果要赋,也应该减去1。
不知道是不是问题所在?
回复 使用道具 举报
chenf1980
论坛元老   /  发表于:2011-8-4 16:42:00
10#
Public Function AddNewRowInRange() As DataRow
            If DataSource IsNot Nothing AndAlso TypeOf (DataSource) Is DataTable Then
                Dim dt As DataTable = DirectCast(DataSource, DataTable)
                Dim dr As DataRow = dt.NewRow
                Dim currentRowIndex As Integer = Me.RowCount
                dt.Rows.InsertAt(dr, currentRowIndex)
                       Me.Focus()
           Return dr
            End If
            Return Nothing
        End Function
回复 使用道具 举报
robert
金牌服务用户   /  发表于:2011-8-4 16:37:00
9#
请问“我在代码里面新追加的一行”是如何追加的?
回复 使用道具 举报
chenf1980
论坛元老   /  发表于:2011-8-4 16:30:00
8#
对了,我想要设置聚焦的那一行,是我在代码里面新追加的一行,莫非代码控制了新增加一行就不行?跟踪过去的话,确实rowcount已经加上了啊
回复 使用道具 举报
chenf1980
论坛元老   /  发表于:2011-8-4 16:23:00
7#
断点读取这个new cellposition,结果发现cellindex = -1,真不知道啥原因


但是如果用multirow.item来获取的话,入金区分的cellindex = 16

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部