C# - Switch Case In VB
May 19, 2012This is my vb.net code:
[Code]...
This is my vb.net code:
[Code]...
I was reading an interesting article here and it made an interesting point about the 'case' statement in vb.net vs the 'switch' statement in C#, which I've pasted below:The following Visual Basic Select Case statement can't be represented in C# with a single switch statement:
Dim Condition As Integer = 55
Select Case Condition
Case 1, 3 To 5, 10, 12, 14, Is > 50
[code]....
I've always found the switch statement in C#, with dropthrough and consequentrequirements for a break in each case, to be a bit unwieldy. Is there any reason they haven't enhanced the switch command to allow these situations? W
EDIT AFTER CLOSE: I'm surprised this was closed, really. With the number of extension methods and helper classes I've found online for other things, I thought an enhanced 'case' would be a good chance. I somewhat hoped a luminary such as Jon Skeet may have commented on the background reasoning, rather than the individuals below who've obviously thought 'religious debate' as soon as more than one language is mentioned.
Say I have this in VB.NET:
Dim executeB As Boolean
Select Case myVariable
Case "a"
'some code
Case "b"
'some code
Case Else
End Select
If myVariable is "a", control will go into the first case statement. Now let's say if myVariable = "a", but inside a's case block, I find that executeB is true, is it then possible to jump to the second case?
[code]How would I switch on an object's type but using VB.NET's Select Case?I'm aware that some might suggest using polymorphism but I'm using a hierarchy of small message classes so that really wouldn't work in my csae.
View 6 Repliesi have a program using a select case to convert letters to special charaters. My question is how can I get the code to read upper and lower case letters without having to put the upper case letters in my select case statement. Example: Part of my code is
[Code]...
i want to the textbox that when I start to type in names it should be like this Camille Aisha Cordova, How do I do this?
View 16 RepliesIm using a Random Pool number generator and was wondering how i can make it use upper-case and lower-case letters as well as numbers here is a pic
[Code]...
I want my TextBox to make the text i enter as Sentence Case(ProperCase).. but i dont want to write any code in an event like Lost Focus or KeyPress
Just by default when ever a user enter or types in a textbox the first letter of every word should automatically converted into UpperCase
When my form loads it adds some handles (using AddHandler) to a sub (showStatus). What this sub does is checks which control activated the sub (using sender.Equals) and displays text in the status label (status) accordingly.For this I use an If...Then statement for each possibility. There are many possibilities and my code get cluttered. Is there a way to do the same thing with a Select...Case statement. I tried: Select Case sender Case tbOne : status.Text = "blahblahblahblahblahblah" End Selectwhere: tbOne is a textbox, status is a StatusLabelIt gives me an error though, saying "Operator '=' is not defined for types 'Object' and 'System.Windows.Forms.TextBox'."Any ideas on how I can get this to work with a select case statement?
View 13 Replieshere is my code..
[Code]....
If the result is 86 and it's mod by 43 the answer is 2 Case 2 is not firing. it just goes to the end of the procedure.
It looks like impossible but...
Try
Select Case command
Case 1
smth()
Case 2
[code]....
Firstly Case 2 runs. Throws exception. And right after this debugger shows that next processed statement is Case Else. Only after Case Else throws own exception Catch block start working. I've never seen this trick. Why can this happened?I'm sure the block is entered once (not like this:first enter hit Case 2 and second hit Case Else).
Update:-To Matt Wilko. Thank you for answering. I've switch to Strict On in Options of VS2010 but nothing has changed. Command is variable, not function. Watch tool shows that on each step Command is the same ( Command = 2).
Fixed. Yeeaaaahhh. I simplefy code to
Try
Select Case 2
Case 2
[code]....
and change project to Console app. This works as I mention. The fix was in Release mode. I was debugging in Release mode. When I switch to Debug mode everything goes as it should.
I need to add Functions for the Case 10 and Case 13 in this code. The code in each select case needs to be moved to the two functions which then returns the code once its called from the Sub Main section. But I am having a really hard time figuring out what exactly gets moved to each function.[code]I'm not sure what exactly to put into the individual Functions and how to change up the Sub Main section.
View 4 Replieshow to switch between VB.NET and C#. I need this information because I have a project that needs application building and the programming language is C#.I found a good sample program on the Internet which uses an SDK called Ozeki SIP SDK.
View 1 RepliesExact duplicate: How to switch a large app from VB6 to VB.Net Exact duplicate: Best strategy for moving applications from VB6 to VB.Net Exact duplicate: Conversion tool comparisons for VB6 tool which converts vb6 to vb.net
View 5 RepliesI am using Visual Studio 2010. I have a Splash Screen which starts first (Everything is running smoothly there). Then it Opens Dialog1. My user is required to check 5 boxes (2,3,4,5,6) (1 has been deleted). I used this Code :
If
CheckBox2.Checked
And
CheckBox3.Checked And
[code].....
I've been experimenting for an 1 hour. The code didn't show errors. I tested it and it didn't work. Then I found out that I was working on Dialog 2 in Dialog 1 code. So I tried another thing and that didn't work because I can't put Dialog2 code in Dialog1 code.
I have two machines, on the first of which I have developed my application to a point of satisfactory stability. Now I want to move everything to my second machine.Both computers have the same level of XP and NET Framework code, and both have Visual Studio 2010 at the same level.I copied my application's project folder onto the second machine, but the second machine's VS 10 can't load the project because it can't find a couple of Interop files (e.g., AxMSComCtl2). All of files are present in the project folder and also in its.bin subfolder. The only observable difference between the two machines is the presence, on the first machine, of some Assemblies stored under my user name there. Copying the Assemblies to the second machine didn't help (I hadn't thought it would).Is my application permanently "imprinted" on my first computer, or is there a simple way of resusitating its clone?
View 10 RepliesHow to switch from users A to user B in visual basic? User A should not log off.
View 3 RepliesI always get an exception when I try to switch between different forms in my program. Here is the exception message:
Control.Invoke must be used to interact with controls created on a separate thread
I have attached the forms to very nice variables and this problem occurs when I try to use command like MyForm.Show().
It does not happen when the forms are not attached to variables, but then I have collosal problems with refreshing the textboxes and stuff.
edit;
I have 4 different forms. When I load the main module and main form, in the Sub (...) Handles MyBase.Load I execute the following code:
In module:
Public StartupForm As frmStartup
Public RegularForm As frmRegularUse
Public LoginForm As frmLogin
[Code]....
This is the aproach I worked out to get the full control over refreshing the forms. It is a program for Motorola Scanner with Windows CE. Now, for example, when I enter the correct password in LoginForm, I want to switch to the RegularForm. When I try to use RegularForm.Show() or RegularForm.ShowDialog or RegularForm.BringToFront(), I get an exception. When I try to call the form with the frmRegularUse.Show() I can call the form, but it is being created in a different thread, I believe, so I loose control over it (when I try to put something from the keyboard, there is no response).
I'm creating a wizard kind of Windows Application. I've to show up the next window on click on "Next >" of every window.
FYI, I cannot use MDI architecture.
What is the best way to achive that?
Right now, I've put the following code on Next Click of every Window.
FormNext.Show()
Me.Hide()
I have some code for my DGV Cell painting event:
'Private Sub DataGridView1_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles DataGridView1.CellPainting
' If e.ColumnIndex <> 1 Then Exit Sub
[code].....
VB.NET is good for me, because it is simple and its not complicated and you don't need to be so strict with syntax. I want to switch to C# but I just don't feel up to it because of the syntax and C# being so strict. What are some good reasons to switch to C# and what will make the transition easier?
View 7 RepliesI have a .NET application that was written in C# and VB.NET using WinForms. We want to slowly migrate this to something new, in many iterations. The new code will be entirely C# and WPF. We would like to utilize Prism.
As far as I know, we can't integrate the old WinForm app in Prism.
I am considering making my old app show the new app in certain instances. For example, when you press a tab in the old app, the new app opens on top of the old app, with the same tabs. Over time, only the new app would be necessary.
I have downloaded SP1 and installed it,I have an applciation with 10 form and numerous classes and dialogs. When I right click a form in the soultion Explorer window and choose view Designer VS hangs for anything upto 10 mins. Is there anything that I can disable/ enable to stop this hapening. The only Language that I will be developing in is vb.net.
View 10 RepliesI have been programming for alot of time. Generally i program in some languages like PHP, ASP.net, Java, JavaScript and others. In all languages i have to use alot of if else statments . Like if value= 10 then ... if i review my code then i find alot of if conditions. So i would like to minimise them but how not sure. one point was using classes somewhat minimised but still they are more... like task, cat, sec and type:
[Code]...
How to switch between form in runtime
View 5 RepliesI have a form (form1.vb), but i want it to be able to click a button (I already have it) and display another form (IEclick.vb)
View 2 RepliesIn my program I want to have two different 'modes', each has its own form. My main form in the program is 'Normal Mode', but there is also a mode called 'Basic Mode' which has a smaller form. How can I switch between the two forms (using buttons) by closing the other without my program closing on me?
View 6 RepliesHow can I monitor how many times a switch open and close? I am planning to add a label13 to my form and use the LPT port so every time the switch goes high (1) it will add 1 to my label13.text. The Printer Adaptor address in the target PC is 0x378. using pin 10 (ACK) or pin 2 (D0).
View 16 RepliesThere is a machine in which .NET v1.1.4322 was installed and also .NET v2.0.50727/v3.0/v3.g were installed.Can we switch these runtime version for each applications like Java applications?Or we can not switch runtime and we can just use only the installed latest version in the machine?
View 3 RepliesI want to have a DataGridView that has two columns.The first column will always be of type DataGridViewComboBoxColumn. Based on the selection in that column, I'd like to be able to change the corresponding cell in the second column to either a DataGridViewComboBoxCell or a DataGridViewTextBoxCell.I'm thinking I just need to make the second column of type DataGridViewColumn, but don't understand the mechanics of how to change the cell type on the fly.I'm working with VB.NET in Visual Studio 2005.
Update: One way around it, I suppose, is to make the second column as a DataGridViewComboBoxColumn, and change the attributes of the cell so that it either behaves like a drop-down list, or as an (editable) drop-down with no elements. The latter looks enough like a text box that I could live with it, and it wouldn't involve changing the type of the cell.