Question (if you are a guru):

How do you code a Multiselect Listbox in VB.NET if there is no variant datatype?

I know how in VB and VBA... (or at least one way, there may be more)

Any suggestions?

Recommended Answers

All 15 Replies

The varient datatype equivlent in VB.NET is Object.

Here's a sample:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim MyVar as Object
MyVar = "Hello"
MyVar = 10 + 10
MyVar += 50
MyVar = New FileStream("c:\test.txt", FileMode.Open)
MyVar = Nothing
End Sub

You can set basically anything to it :-). I don't reccomend using this type often, it takes lots of memory.

Also, you may want to set your variable equal to nothing when your finished with it, just in case the GC dosen't get to it fast enough.

Thanks Tekmaven. Good point about the memory issue. I am so use to VBA and VB 6.0 that I was at a little loss when I read a VB.NET book and it said no Variant datatype. Now what you have stated makes sense. I guess that is the fun part of programming is to find the solution in a different way...

:-D Glad I can help! The .NET framework is so amazing. You can do things so many ways, its a joke :-).

What's the best part? Your VB apps run just as fast as c# or c++ apps :-).

(I'm in a smiley mood)

Well almost as fast. Even though it's the .NET architecture C# and C++ (even more) will always have less overhead than VB.

Nope. C++ and C# apps compile to MSIL just like VB.net apps. MSIL is MSIL, and it executes at the same exact speed.

The only overhead? The .NET Framework itself.

*MSIL = Microsoft Intermediate Language

Whether it's MSIL or anything else, there's still overhead, even in .NET. Otherwise, why would anyone use C++ or C# over VB? Any development tool that has premade objects, especially drag and drop ones like in VB.NET or VisualFoxPro create more overhead because you're giving up performance over simplicity.

Do you have any proof that it's the same speed? The reason I say this is because the same issue goes with anything else. You're adding another layer of complexity. JSPs are compiled to Java code but have to be converted to servlets first. Servlets are compiled directly to Java byte code but it's more time consuming to develop as compared to JSPs (even though they both run on the JRE). The same comparison goes with C++, C# vs VB.NET.

This is the exact point that Dr. Liang brought up in Programming Languages class yesterday. The higher the level of abstraction the more overhead there is. That's why OOP languages weren't developed sooner ... older hardware wouldn't have been able to handle dealing with the layer of abstraction they provide.

Ewww Dr. Liang! Was she the one that taught the robotics class with the Lego bots?

Heh, Hofstra's finest.

No, Dr. Barr teaches A.I. class ;)

hi im quite new to vb.net and was wondering whether you know how i could print pictures stored in a file with vb.net?

thanks

The varient datatype equivlent in VB.NET is Object.

Here's a sample:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim MyVar as Object
MyVar = "Hello"
MyVar = 10 + 10
MyVar += 50
MyVar = New FileStream("c:\test.txt", FileMode.Open)
MyVar = Nothing
End Sub

You can set basically anything to it :-). I don't reccomend using this type often, it takes lots of memory.

Also, you may want to set your variable equal to nothing when your finished with it, just in case the GC dosen't get to it fast enough.

.........
does vc++ .net also convert to MSIL????but according to my knowledge......vc++ .net does not convert to msil like other languages

VC++.NET compiles to MSIL or standard machine code. You can set it in the project properties. (The /clr switch)

Hmmm....
Can Any Body Say How To Hide Codes From Being Exposed....
As in Isladm.exe we can see some codes......
if i pass the password for my DataBase in my code can be exposed.......

Don't embed your password into your app; it's very bad practice. What if the password changes? You'd need to recompile every time..

Actually i want to hide the database password from my clients.......if they will give the password then they will have authorities over database what i dont want so what to do???
i cant embded password in application for exposure risk.......so is there any good way to do those????

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.