Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将此方法从C#转换为VB.NET_C#_Vb.net_Visual Studio_Windows Phone 7 - Fatal编程技术网

如何将此方法从C#转换为VB.NET

如何将此方法从C#转换为VB.NET,c#,vb.net,visual-studio,windows-phone-7,C#,Vb.net,Visual Studio,Windows Phone 7,我正试图在网上找到一些与相机相关的教程。问题是,大多数教程都是用C语言编写的,而我需要用C语言编写。我曾尝试使用在线转换器转换它,但它并不总是能识别所有语法,因此我会出错。如何将其转换为Visual Basic Loaded += (_, __) => { Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode = Microsoft

我正试图在网上找到一些与相机相关的教程。问题是,大多数教程都是用C语言编写的,而我需要用C语言编写。我曾尝试使用在线转换器转换它,但它并不总是能识别所有语法,因此我会出错。如何将其转换为Visual Basic

Loaded += (_, __) =>
    {
        Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode =
            Microsoft.Phone.Shell.IdleDetectionMode.Disabled;

        cam = new VideoCamera();
        cam.Initialized += (___, ____) =>
            {
                cam.LampEnabled = true;
                cam.StartRecording();
            };
        vCam.SetSource(cam);

        new Thread(() =>
            {
                try
                {
                    var isf = IsolatedStorageFile.GetUserStoreForApplication();

                    var files = isf.GetFileNames();
                    foreach (var file in files)
                    {
                        Debug.WriteLine("Deleting... " + file);
                        isf.DeleteFile(file);
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine("Error cleaning up isolated storage: " + ex);
                }
            }).Start();
    };
这是我从转换器得到的代码:

Loaded += Function(_, __)
Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode = _
    Microsoft.Phone.Shell.IdleDetectionMode.Disabled

cam = New VideoCamera()
cam.Initialized += Function(___, ____)
cam.LampEnabled = True
cam.StartRecording()

End Function

vCam.SetSource(cam)

New Thread(Function()
Try
    Dim isf = IsolatedStorageFile.GetUserStoreForApplication()
    Dim files = isf.GetFileNames()
    For Each file As var In files
        Debug.WriteLine("Deleting... " & Convert.ToString(file))
        isf.DeleteFile(file)
    Next
Catch ex As Exception
    Debug.WriteLine("Error cleaning up isolated storage: " & ex)
End Try

End Function).Start()

End Function
使用。转换器以00分钟55秒的速度呈现

注:下划线不是变量名的好主意。

请使用以下(我使用过):


我希望这有帮助:)

您的转换器似乎不知道如何使用+=运算符或VB中的下划线。他们正在对编译器进行大破坏

改变

Loaded += Function(_, __) 
    Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode = Microsoft.Phone.Shell.IdleDetectionMode.Disabled

改变

cam.Initialized += Function(___, ____) 


注意:您可能需要更改事件处理程序中的
对象
签名,以匹配实际的事件签名,但其他一切都可以快速查看。

我使用了一个转换器,并且在每个地方都出现了错误。我建议发布转换器的操作,所以人们可以帮助缩小错误。我在转换器代码中添加了我想知道为什么投反对票。我认为这是一个合理的问题。我投票支持它以帮助抵消负数。下划线用于命名从未被引用的函数参数,但他没有编写代码,因此他可能没有命名它们。我认为+=在添加事件处理程序时不起作用。您应该使用AddHandler语句。
 AddHandler Loaded , Function(x as Object, y as Object) 
    Microsoft.Phone.Shell.PhoneApplicationService.Current.ApplicationIdleDetectionMode = _
        Microsoft.Phone.Shell.IdleDetectionMode.Disabled
cam.Initialized += Function(___, ____) 
AddHandler cam.Initialized, Function(xx as Object, yy as Object)