Perhaps back off a step and consider how awful that method of creating a substring.
You'd be better off using something more concrete/transportable.
In pseudo-code:
stringType old = "abcdefghijklmnop"
stringType new = substring_Function(print-n-characters, starting-at-postion-0)
PopUpAMessage(new)
With the above, you can print the first three characters by using n=3. You also have the added flexibility (i.e., look to the future) of grabbing any contiguous group of characters.
It's a type compatible with most 'modern' languages and you thereby even use the now ubiquitous string container types for storing your result.
A word of advice: don't try to program C# (Or any other language) as though it were a different language (VB). It may forced to work, but it's sort of defeating the point of converting to the new language.