你使用数据感知类吗?

时间:2009-07-28 09:08:43

标签: vb6 class data-aware

我正在使用VB6。

数据感知类是指设置了DataBindingBehavior或DataSourceBehavior属性的类。

我从MSDN学到了这个概念,我想知道我们何时应该使用这种数据感知类技术?或者就像大多数开发人员忽略的数据环境设计器一样?

3 个答案:

答案 0 :(得分:3)

创建数据感知类的能力只是Visual Basic可扩展性模型的另一个方面。除了能够创建标准类和UserControl之外,您还可以将它们创建为可以插入VB数据绑定机制的数据感知类。

您可以包装类似ADO Recordset或ADO Data Control的内容来创建更多特定于应用程序的组件,或者您可以从头开始创建自己的组件,以便为某些异常数据提供数据绑定。您甚至可以通过将VB6数据感知类与OLE DB简单提供程序(OSP)工具包结合使用来创建基本的自定义OLE DB提供程序以满足不寻常的需求。

今天很少使用这些东西,因为VB6教育非常缺乏。许多通过实例学习的程序员回避数据绑定,因为他们发现它令人沮丧。其中大部分是缺乏理解。相反,我们回过头来编写许多类似QBasic的过程代码,牺牲了基于VB6事件的编程的强大功能。

你会在很多VB.Net和C#代码中看到同样的东西。人们似乎并不知道事件驱动的编程实际上比“OOPiness”的程度重要得多,而这似乎是焦点所在。

了解其重要性的程序员往往在他们的VB6程序中有更少的DoEvents循环,并且在他们的.Net程序中几乎没有无偿的多线程。

我和任何避免使用数据环境设计器和绑定控件的人一样内疚。我计划更多地了解它们的用途和功能,同时更多地使用VB6的数据报表设计器。这些是编写以数据为中心的程序的强大工具,这是我最近做的很多。


毫无疑问,微软已经放弃了对VB6开发的所有支持。但这并没有说明对它的需求,它仍然很强劲。如果人们对回答有关VB6的问题没什么贡献,他们可能会在其他地方更好地付出努力,而不是在这里大喊大叫。令人遗憾的是,我们从未获得过后续产品 - 支持64位开发的新VB非常好。它只是不在牌中。

答案 1 :(得分:1)

你知道VB6有多久了吗?它已经十年了。你应该很好地忽略你从VB6“学习”的任何东西。


VB6上的一些资源:

所有这些都来自以下搜索:http://social.msdn.microsoft.com/Search/en-US/?Refinement=22&Query=vb6

答案 2 :(得分:0)

我认为大多数VB6开发人员都忽略了这个功能。当然,我曾经尝试过一次,再也没用过它。如果您使用Google DataBindingBehavior或DataSourceBehavior,则点击次数相对较少。

我认为John在他的回答中试图传达的是VB6不是新开发的好选择,除非你有充分的理由相反 - 例如,如果你的组织已经有很多VB6经验和很多VB6代码维护,没有其他桌面编程语言的经验。在你的情况下听起来不太可能,否则你会问你的同事这个​​问题,而不是在Stack Overflow上发帖!