There are two ways to represent time in VB.NET, DateTime and TimeSpan. They're very different, even though they're companion objects. This Quick Tip reveals how they work.
Programmers of the C++ religion believe that something called "multiple inheritance" is the only path to true enlightenment. The rest of us make due with "multiple interfaces". This Quick Tip shows the difference and explains how multiple interfaces work.
VB.NET fully supports what is called an "abstract base class" but there is no abstract keyword in VB.NET. You're just supposed to know what an abstract base class is. (Hint: The keyword is "MustInherit".) This Quick Tip tells you.
When a class contains an event that you want to raise using the RaiseEvent keyword in an inherited class, you can have a problem. VB.NET doesn't allow you to raise the event directly. This Quick Tip tells you how to do it indirectly.
The New constructor is a special method. It's special because it doesn't follow all of the normal rules of VB.NET methods. In particular, it's different when a class is inherited. This Quick Tip shows what that difference i
MyClass isn't seen nearly as often in code as the more common Me and MyBase keywords. In fact, most programmers may not even be aware how how it's used. This Quick Tip explains MyClass and compares it to Me and MyBase.
ToString is one of the fundamental objects in .NET because it's in the Object Object. That means it's available to every object. All of them. Since it's fundamental, it's worth learning more thoroughly than other objects. This Quick Tip shows how to override ToString with your own custom processing.
Shadows is usually used to ensure that if you code something and you happen to use a name that is the same as another element, your code will be used instead of the other code. But this behavior can be a problem. This Quick Tip explains why.
A reference type in VB.NET is an object stored in a type of memory called the Heap. Program code doesn't use the memory directly; it uses pointers to the memory instead. If you create a class in your code and then instantiate the class as an object, it's a reference type. But there are several ways in VB.NET that you can declare one. This article explains these different methods.
The Form is a special object in VB.NET, but it's still a class. This Quick Tip covers some of the implications of this fact.
Multidimensional arrays have always been obscure, and they're normally not the "today" way to do things. Today we normally use collections or datastores like a database or XML. I ran into an interesting dark corner of multidimensional arrays: It appears that it is now possible to assign different types to the same multidimensional array and even use a For-Each loop to process them. This article explores those dark corners.
DataSet is a fundamental object in dozens of VB.NET technologies. If you need a really quick introduction to complete some other task, this Quick Tip is designed to do just that.
VB.NET has a quicker way to initialize data objects. This Quick Tip shows you how to do it with both parameter based constructors and anonymous types.
A reader asked a question about using the Dictionary object. Like a lot of questions, this seemed to be more a design question than a syntax question. Using ListView is a better solution. This Quick Tip shows how to solve his problem and also illustrates another use of binary serialization (BinaryFormatter).
Copying a row from one worksheet to another is something that you may want to do in Excel. A reader asked how to write the VBA code to do that and this Quick Tip has the answer.
A reader asked how to use a dictionary object to reference a list. This answer explores the different dictionaries and the different lists and ends up showing the difference between a ListBox and a ListView control.
When it was introduced, .NET provided an easy way to mark each version of your program with a "Major, Minor, Build, and Revision" number. But it seems that every good thing gets complicated and that has happened here too. There are three of these numbers now and they can all be different. And there are at least four places where you will see them. And there are different names for them, depending on where they appear. This Quick Tip explains what they are and how they can effect your system.
The Object object is the root of the entire .NET Framework. That means that the methods and properties of Object are available all the time and in every .NET Framework object because everything inherits from Object. This Quick Tip tells you about it.
There are two different Print statements that date from the DOS era. A question from a reader motivated me to look into them.
Copying Text into Word, Excel, or some other Office document is a common requirement. There are a number of variations to this problem. This Quick Tip shows them to you, including using Notepad to do the job.
.NET Collections are a very useful way to handle groups of objects in VB.NET, but you may not realize that Visual Basic collections are not exactly the same thing as .NET Framework collections. This Quick Tip explains the difference.
The sender and e parameters passed by the system to standard VB.NET event subroutines are key elements in your programming toolkit. This Quick Tip explains how to use them.
These two structures can do the same things. Which one should you use? A Quick Tip that compares them, including StopWatch and ILDASM analysis.
The ability to run a batch file (DOS command file) isn't built into Visual Studio. But it's not hard to add it. This Quick Tip explains how.
Downloaded source code files are normally blocked. That means that a bit tells programs such as Visual Studio that the files have not been authenticated and might contain something dangerous. Usually, this is just an irritation because you actually do know what is in the files. This Quick Tip shows how to unblock the files while unzipping them so you don't have this problem.