2016-06-22 56 views
-4

所以,我想使一个函数方法的工作,但一些问题出现了,我无法解决它们。我已经使用了断点,并且我发现这是一个循环,其中一个代码行没有被调用。这是方法:功能问题,而返回一个值

Private Function SendToRecycle(filename As String) As Boolean 
    If MsgBox("Are you sure you want to sent it to recycle bin?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then 
     Return "True" 
     My.Computer.FileSystem.DeleteFile(filename, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.SendToRecycleBin) 
    ElseIf MsgBox("Are you sure you want to sent it to recycle bin?", MsgBoxStyle.YesNo) = MsgBoxResult.No Then 
     Return "False" 
    End If 
    Return SendToRecycle 
End Function 

它能做什么很简单,如果用户选择选项是的,它应该返回true,并发送该文件到回收站和写入我的数据库,如果不是,它将返回true,写了我的数据库没有删除那个添加文件。 但是现在发生的是,如果我点击Yes,它将返回True,但不会调用操作来删除文件...

你有任何ideia我该如何解决我的问题?

+1

'Return'退出叫做以后方法之前的程序。 [也可能sockpuppet警报](http://stackoverflow.com/q/37950134/1070452) – Plutonix

+0

将启动My.Computer.FileSystem.DeleteFile ... – ChicagoMike

+0

后的返回如果我这样做,它会删除文件但不会返回true @ChicagoMike – RekcsGaming

回答

0

尝试:

Private Function SendToRecycle(filename As String) As Boolean 
    If MsgBox("Are you sure you want to sent it to recycle bin?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then 
     My.Computer.FileSystem.DeleteFile(filename,FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.SendToRecycleBin) 
     Return True 
    ElseIf MsgBox("Are you sure you want to sent it to recycle bin?", MsgBoxStyle.YesNo) = MsgBoxResult.No Then 
     Return False 
    End If 
End Function 
+0

返回时,它会给我一个错误'表达预期' – RekcsGaming

+0

我刚刚更正了代码 –

+0

我试过了,它不起作用。基本上它不读取返回true并删除文件而不读取该行 – RekcsGaming