Sorry, still having trouble here is the entire proc I am trying to recreate in VB
public IEnumerable<object> SendQuery(string ip, FilesTransfer transfer, int sport)
{
int port = 0;
switch (transfer.Action)
{
case Action.Invite:
{
port = HelpClass.GetAvailablePort();
if (MessageBox.Show(string.Format("Accept {0} files from {1}", transfer.Files.Count, transfer.Name), "Files", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
ThreadStart start = delegate
{
form = new TProgress(null, port);
form.sport = sport;
form.Show();
form.GetThread = new Thread(new ParameterizedThreadStart(form.GetInvoke));
form.GetThread.Start(transfer);
};
HelpClass.Form.BeginInvoke(start);
break;
}
else return new List<object>() { (int)InviteRusult.Cancel, 0 };
}
default:
{
return new List<object>() { (int)InviteRusult.Busy, 0 };
}
}
return new List<object>() { (int)InviteRusult.Ok, port };
}
An online C# to VB converter spit this out, but the IDE doesn't like 'Dim start As ThreadStart = Function() Do
Public Function SendQuery(ByVal ip As String, ByVal transfer As FilesTransfer, ByVal sport As Integer) As System.Collections.Generic.IEnumerable(Of Object) Implements ITransfer.SendQuery
Dim port As Integer = 0
Select Case transfer.Action
Case Action.Invite
If True Then
port = HelpClass.GetAvailablePort()
If MessageBox.Show(String.Format("Accept {0} files from {1}", transfer.Files.Count, transfer.Name), "Files", MessageBoxButtons.YesNo) = DialogResult.Yes Then
'Dim start As ThreadStart = Function() Do
' form = New TProgress(Nothing, port)
' form.sport = sport
' form.Show()