Skip to content
  • There are no suggestions because the search field is empty.

OPC Data Client - OPC DA - VB.NET- Subscribing and Updating Controls on Form Thread

How do I update a control on the form thread when subscribing to a tag?

    'Create an event handler for the callback
    Public Delegate Sub EasyDAItemChangedEventHandler (ByVal sender As Object, ByVal e As EasyDAItemChangedEventArgs)

    'Create our client object
    Private EasyDA As OpcLabs.EasyOpc.DataAccess.EasyDAClient = New OpcLabs.EasyOpc.DataAccess.EasyDAClient


    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Add a handler for the callback
        AddHandler EasyDA.ItemChanged, AddressOf opc_ItemChanged

        'Subscribe to a tag
        EasyDA.SubscribeItem("127.0.0.1", "SWToolbox.TOPServer.V5", "Channel1.Device1.Tag1", 1000, Nothing)

    End Sub


    Private Sub opc_ItemChanged(ByVal sender As Object, ByVal e As EasyDAItemChangedEventArgs)
        Try
            If (InvokeRequired) Then

                Invoke(New ItemChangedDelegate(AddressOf opc_ItemChanged))
            Else
                TextBox1.Text = Convert.ToString(e.Vtq.Value)
            End If
        Catch ex As Exception
            MessageBox.Show(ex.Message.ToString)
        End Try
    End Sub

A sample project can be found here: