替代客户.Advise + = OnAdvise;在vb.net NDDE中

时间:2014-11-21 21:27:35

标签: vb.net ndde

我正在使用NDDE从服务器获取数据。问题是我不知道如何获得多个项目。

我搜索了很多。 c#中有一个代码可以获取多个项目。我把它转换为vb,但是我无法找到这一行的替代品

client.Advise += OnAdvise;

Public Sub ConnectToDDE
  Dim list As New List(Of String)        
  list.Add("1010")        
  list.Add("2020")        
  list.Add("3030")        
  list.Add("4040")        
  list.Add("TASI")               
  Try            

    If client.IsConnected Then client.Disconnect()       
  Catch        
  End Try        
  Try                       
    client = New DdeClient(txtDDEServer.Text, txtDDETopic.Text, Me)            
    client.Connect()            
    'client.Advise += OnAdvise; Should be here '
    For i As Integer = 1 To list.Count - 1                
      client.StartAdvise("QO." & list(i) &     ".TAD$high", 1, True, 60000)            
    Next        
  Catch ex As Exception            
    displayTextbox.Text = ex.Message            
  End Try    
End Sub

vb中是否有client.Advise += OnAdvise;的替代方法,如果不是,我如何从服务器获取多个项目。

服务器提供股票价格(符号,名称,开盘价,最高价,最低价,收盘价)

服务器名称= tickerchart

topic = live

我需要的物品很多(符号,名称,开放,高,低,关闭)

示例:

    client.StartAdvise("QO.1010.TAD$high", 1, True, 60000)

这个项目得到股票1010的高价。如何得到其余的。

1 个答案:

答案 0 :(得分:4)

我不熟悉NDde库,但client.Advise += OnAdvise;看起来像添加一个事件处理程序,所以VB.NET等价物就像:

AddHandler client.Advise, AddressOf OnAdvise

OnAdvise是具有适当签名的子例程,可能类似于:

Private Sub OnAdvise(sender As Object, e As DdeAdviseEventArgs)
    ' Do something here...
End Sub