高手们帮小弟我看看一下代码哪里有有关问题

高手们帮我看看一下代码哪里有问题


我用富文本框写了一个高级记事本,现在需要在每次编辑完成关闭该记事本时,都会跳出个对话框询问是否保存当前更改。当然,我已经设置默认保存格式为.txt了。    
下面用的这段代码哪里有问题?(txtEdit是文本框名)    
Private   Sub   Form_FormClosing(ByVal   sender   As   Object,   ByVal   e   As   System.Windows.Forms.FormClosingEventArgs)   Handles   Me.FormClosing    
If   txtEdit.Modified   =   True   Then    
sfdMain.ShowDialog()    
txtEdit.SaveFile(sfdMain.FileName)    
End   If    
End   Sub    


------解决方案--------------------
Option Explicit
Dim bModified As Boolean
Dim strFilePath As String

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

If bModified = True Then

Dim bMsgReturn As VbMsgBoxResult
bMsgReturn = MsgBox( "文本已改变,是否保存? ", vbYesNoCancel + vbQuestion)

Select Case bMsgReturn
Case VbMsgBoxResult.vbYes
If SaveFile() = True Then
Cancel = 0
Else
'如果保存不成功,还是不退出为妙
Cancel = 1
End If
Case VbMsgBoxResult.vbNo
'如果不保存,直接退出
Cancel = 0
Case VbMsgBoxResult.vbCancel
Cancel = 1
End Select
End If

End Sub

Private Sub txtEdit_Change()
'这里的代码用于判断文本框的值是否改变
bModified = True
End Sub

Private Function SaveFile() As Boolean
'这里的代码用于保存文件,如果保存成功,返回True,自己去调用CommonDialog去

If strFilePath = " " Then
'调用commondialog.showsave得到strfilepath
End If

'将文件保存至strFilePath路径下
'##############代码略###############


'如果保存已完成,将是否修改的标识复位于
bModified = False

SaveFile = True

End Function