以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助代码问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28189)

--  作者:mamasong
--  发布时间:2013/1/22 9:50:00
--  [求助代码问题

Dim Result As DialogResult
With CurrentTable
    If .Rows.Count > 0 Then
        If .Current.DataRow.RowState = DataRowState.Unchanged Then \'如果当前行未曾修改
            .current.locked =True
            e.Form.Close
            Return
        Else
            Result = MessageBox.Show("是否直接退出?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
            If Result = DialogResult.no Then
                Return
            Else
                .Current.delete()
                .current.locked =True
            End If
        End If
    Else
        e.Form.Close
    End If
End  With

上述代码是我做的录入窗口中的“退出”按钮中写入的代码,执行时大部分情况正常,只有,点击新增按钮后,不保存,直接点击对话框的“是”退出时,总是提示出错,哪位高手给看下,我实在是不知道哪里出现了问题了。

 


--  作者:lin_hailun
--  发布时间:2013/1/22 9:53:00
--  
 你的这两句想实现什么?

.Current.delete()
.current.locked =True


 至少要判断一下。

.Current.delete()
if .current isnot nothing then
.current.locked =True
end if

--  作者:mamasong
--  发布时间:2013/1/22 9:55:00
--  
我想实现,如果新增一行,不想要的话,直接点退出的话,可以将新增的不打算保存的行直接删掉,再关闭窗口。
--  作者:mamasong
--  发布时间:2013/1/22 9:57:00
--  
按照您说的改了之后,不报错了,但是为什么窗口不关闭呢?
--  作者:mamasong
--  发布时间:2013/1/22 10:01:00
--  
我又在增加了一行e.form.close ,解决了,项目做完之后,发现好多问题,看来是要每一个调试好了再进行下一步就好了