2016-06-22 91 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