Build a More Powerful CRM System with Visual Basic .NET Extensions: Listing 1.

Building a ContactList for display in ACT2012Demo.

framework.LogOn(PADFile, ACTUserName, ACTUserPassword)
Dim companyField = framework.Contacts.GetFieldDescriptor(
  name:="TBL_CONTACT.COMPANYNAME", isReal:=True)
Dim sortByCompanyNameAscending() As SortCriteria = {
  New SortCriteria(companyField, 
Dim contacts = framework.Contacts.GetContacts(sortByCompanyNameAscending)

'Build the list for display, log off, display it
Dim contactList As New List(Of ContactIdentity)
For i = 0 To contacts.Count - 1
  Dim contactInfo = New ContactIdentity With {
    .CompanyName = contacts(i).Company,
    .FirstName = contacts(i).FirstName,
    .LastName = contacts(i).LastName,
    .Phone = contacts(i).Fields.Item( _       name:="TBL_CONTACT.BUSINESS_PHONE", isReal:=True),
    .MobilePhone = contacts(i).Fields("MOBILE_PHONE",
Me.DataGridView1.DataSource = contactList
</Language Lab>
Extending ACT!

About the Author

Joe Kunk is a Microsoft MVP in Visual Basic, three-time president of the Greater Lansing User Group for .NET, and developer for Dart Container Corporation of Mason, Michigan. He's been developing software for over 30 years and has worked in the education, government, financial and manufacturing industries. Kunk's co-authored the book "Professional DevExpress ASP.NET Controls" (Wrox Programmer to Programmer, 2009). He can be reached via email at

comments powered by Disqus


  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

  • Microsoft: Move from Traditional ASP.NET to 'Core' Requires 'Heavy Lifting'

    There are plenty of reasons to move traditional ASP.NET web apps -- part of the old .NET Framework -- to the new cross-platform direction, ASP.NET Core, but beware it will require some "heavy lifting," Microsoft says.

  • Purple Blue Nebula Graphic

    How to Compute Disorder for Machine Learning Decision Trees Using C#

    Using a decision tree classifier from a machine learning library is often awkward because it usually must be customized and library decision trees have many complex supporting functions, says resident data scientist Dr. James McCaffrey, so when he needs a decision tree classifier, he always creates one from scratch. Here's how.

  • Blazor's Future: gRPC Is Key

    Blazor guru Steve Sanderson detailed what Microsoft is thinking about the future of the revolutionary project that enables .NET-based web development using C# instead of JavaScript, explaining how gRPC is key, along with a new way of testing and a scheme for installable desktop apps.

  • Don't Do It All Yourself: Exploiting gRPC Well Known Types in .NET Core

    If you're creating business services that send dates and decimal data then you may be concerned that gRPC services don't support the relevant data types. Don't Panic! There are solutions. Here's how to use them.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events