Click here to Skip to main content
15,887,267 members
Home / Discussions / .NET (Core and Framework)
   

.NET (Core and Framework)

 
JokeRe: String compression Pin
n.podbielski19-Nov-12 21:22
n.podbielski19-Nov-12 21:22 
Questionestoy tratando de compilar un archivo.mex a .net Pin
yeyomax19-Nov-12 9:33
yeyomax19-Nov-12 9:33 
AnswerRe: estoy tratando de compilar un archivo.mex a .net Pin
Eddy Vluggen19-Nov-12 11:09
professionalEddy Vluggen19-Nov-12 11:09 
GeneralRe: estoy tratando de compilar un archivo.mex a .net Pin
IdeasPravinh23-Nov-12 23:47
IdeasPravinh23-Nov-12 23:47 
AnswerRe: estoy tratando de compilar un archivo.mex a .net Pin
Bernhard Hiller19-Nov-12 22:35
Bernhard Hiller19-Nov-12 22:35 
GeneralRe: estoy tratando de compilar un archivo.mex a .net Pin
yeyomax20-Nov-12 5:25
yeyomax20-Nov-12 5:25 
GeneralRe: estoy tratando de compilar un archivo.mex a .net Pin
Dave Kreskowiak20-Nov-12 6:11
mveDave Kreskowiak20-Nov-12 6:11 
Question[VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661319-Nov-12 2:51
professionalsteve_949661319-Nov-12 2:51 
Hello everybody,
I have a problem about the modification of fields (such as textbox, label, acc) of a form from another thread.
I state that I am not an expert on Visual Studio 2008 and, unfortunately, even on VB.NET but I have to use these tools to write an application that runs on a device with Windows CE 5.0.
In another forum I've already found a post about it and I followed the solution proposed.
Everything works if I write all the code in the class of my form (Form1), I mean in the Form1 there is a button that starts a thread that increments by 1 a variable declared in Form1, and then calls a "Sub AggLab()", always in Form1, that updates the contents of a label (in Form1) with the increased value of the variable:

VB
Imports System.Threading

Public Class Form1
  Dim MyNewThread As Thread
  Dim tmp As Int32 = 0

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    'create the thread
    MyNewThread = New Thread(AddressOf SubDelThread)
    MyNewThread.Name = "NuovoThread"
    'start the thread
    MyNewThread.Start()
  End Sub


  Private Sub SubDelThread()
    Do
      tmp = tmp + 1
      AggLab()
      Thread.Sleep(1000)
    Loop
  End Sub

  Private Delegate Sub AggLabDel()
  Private Sub AggLab()

    If Me.InvokeRequired Then
      Me.BeginInvoke(New AggLabDel(AddressOf AggLab))
      Return
    End If

    Label1.Text = tmp.ToString

  End Sub

End Class


But if the function executed within the thread is in a different class/file it does not work anymore:

VB
'file Form1.vb

Imports System.Threading

Public Class Form1
  Dim MyNewThread As Thread

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    'create the thread 
    MyNewThread = New Thread(AddressOf MyThread.MyThreadExecute)
    MyNewThread.Name = "NuovoThread"
    'start the thread
    MyNewThread.Start()
  End Sub

  Private Delegate Sub AggiornaLabelDelegate()
  Public Sub AggiornaLabel()

    If Me.InvokeRequired Then
      Me.BeginInvoke(New AggiornaLabelDelegate(AddressOf AggiornaLabel))
      Return
    End If

    Label1.Text = MyThread.iii.ToString

  End Sub


VB
'file MyThread.vb

Imports System.Threading

Public Class MyThread
  Private Shared miii As Int32 = 0

  Public Shared Property iii() As Int32
    Get
      Return miii
    End Get
    Set(ByVal value As Int32)
      miii = value
    End Set
  End Property

  Public Shared Sub MyThreadExecute()
    Do
      iii = iii + 1
      Form1.AggiornaLabel()
      Thread.Sleep(1000)
    Loop
  End Sub

End Class


What I check with debugging is that in this case "Me.InvokeRequired" is always false.

Where did I go wrong?
Can anyone give me a tip?

Thanks in advance.
AnswerRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Simon_Whale19-Nov-12 3:04
Simon_Whale19-Nov-12 3:04 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661319-Nov-12 4:37
professionalsteve_949661319-Nov-12 4:37 
AnswerRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Eddy Vluggen19-Nov-12 5:04
professionalEddy Vluggen19-Nov-12 5:04 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661319-Nov-12 22:54
professionalsteve_949661319-Nov-12 22:54 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Eddy Vluggen20-Nov-12 0:53
professionalEddy Vluggen20-Nov-12 0:53 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661320-Nov-12 3:36
professionalsteve_949661320-Nov-12 3:36 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Eddy Vluggen20-Nov-12 4:33
professionalEddy Vluggen20-Nov-12 4:33 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661320-Nov-12 5:23
professionalsteve_949661320-Nov-12 5:23 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Eddy Vluggen20-Nov-12 9:21
professionalEddy Vluggen20-Nov-12 9:21 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
steve_949661320-Nov-12 21:25
professionalsteve_949661320-Nov-12 21:25 
GeneralRe: [VB.NET 2008] Change form from separate thread (Windows CE) Pin
Eddy Vluggen21-Nov-12 5:07
professionalEddy Vluggen21-Nov-12 5:07 
QuestionBinding gridview from webservice using jquery Pin
saravanan2509218-Nov-12 20:41
saravanan2509218-Nov-12 20:41 
AnswerRe: Binding gridview from webservice using jquery Pin
Phanindra26119-Nov-12 6:05
Phanindra26119-Nov-12 6:05 
QuestionNlog for .Net compact Pin
TalSt17-Nov-12 19:24
TalSt17-Nov-12 19:24 
AnswerRe: Nlog for .Net compact Pin
Richard MacCutchan17-Nov-12 21:43
mveRichard MacCutchan17-Nov-12 21:43 
GeneralRe: Nlog for .Net compact Pin
TalSt18-Nov-12 1:15
TalSt18-Nov-12 1:15 
GeneralRe: Nlog for .Net compact Pin
Richard MacCutchan18-Nov-12 1:36
mveRichard MacCutchan18-Nov-12 1:36 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.