2012-07-12 60 views
0

我使用VS2010VB6.SetItemData(组合框,我,rd.Fields( “XXX”)。值)

当我转换的代码转换VB6到VB.NET,我发现的东西,我不不要理解代码在做什么以及如何转换它的意义。

i = 0 

While Not rd.EOF 

     cobTmp.Items.Insert(i, rd.Fields("d").Value) 
     VB6.SetItemData(cobTmp, i, rd.Fields("r").Value) 
     If rd.Fields("r").Value = "1234" Then 
      intloc1234 = i 
     End If 
     rd.MoveNext() 
     Debug.Print(VB6.TabLayout(VB6.GetItemData(cobTmp, i), VB6.GetItemString(cobTmp, i))) 
     i = i + 1 
    End While 

我该如何处理这些代码以及和这条线:

Debug.Print(VB6.TabLayout(VB6.GetItemData(cobTmp, i), VB6.GetItemString(cobTmp, i))) 

我可以使用cobTmp.item(i)更换VB6.GetItemData(cobTmp, i)

VB6.TabLayout怎么样?

我知道这些可以被忽略,但我想要做得更好。

+1

对不起 - 我真的很难理解这个问题。 – 2012-07-12 09:45:47

+0

我将代码从VB6转换为VB.NET。以上代码来自VB6,它使VS2010变暖。我想解决以VB6.xxxxx开始的代码。 =] – user1506228 2012-07-13 01:56:21

回答

1

关于GetItemData,根据Microsoft Support

在Visual Basic 6.0,对于ListBox或ComboBox控件的ItemData属性可以在属性窗口设计时设置为Integer与ListBox或ComboBox关联项目。在Visual Basic 2010中,ItemData属性不再存在; GetItemData和SetItemData方法可以用来模拟ItemData的行为。

关于TabLayout,根据本Microsoft Support Article

在Visual Basic 6.0,该方法Debug.Print有这样的指定的输出是如何在立即窗口格式化的outputlist参数。升级工具使用此函数将outputlist参数转换为字符串以在即时窗口中显示。

+0

+1我们也可以链接到['ItemData'](http://msdn.microsoft.com/en-us/library/aa235132(v = vs.60).aspx)上的VB6文档。但是,如果'ItemData'和'TabLayout'实际上只用于'Debug.Print'语句中,那么只需删除代码并转到其他东西:) Debug.Print只是一个日志语句。 – MarkJ 2012-07-12 16:43:04

+0

非常感谢,我正在尝试转移到其他人=] – user1506228 2012-07-13 01:54:05