开发者

C# Mobile Application textbox help!

Okay So what i am having trouble with is these lines of code below.

 if (textBox1.Text == "Alabama" || textBox1.Text == "alabama")
    {
        StateTax = 0.0570;
    }if (textBox1.Text == "Alaska" || textBox1.Text == "alaska")
    {
        StateTax = 0.1167;
    }if (textBox1.Text == "Arizona" || textBox1.Text == "arizona")
    {
        StateTax = 0.0592;
    }if (textBox1.Text == "Arkansas" || textBox1.Text == "arkansas")
    {
        StateTax = 0.0835;
    }if (textBox1.Text == "California" || textBox1.Text == "california")
    {
        StateTax = 0.0739;
    }if (textBox1.Text == "Colorado" || textBox1.Text == "colorado")
    {
        StateTax = 0.0272;
    }if (textBox1.Text == "Connecticut" || textBox1.Text == "connecticut")
    {
        StateTax = 0.0654;
    }if (textBox1.Text == "Deleware" || textBox1.Text == "deleware")
    {
        StateTax = 0.0825;
    }if (textBox1.Text == "Florida" || textBox1.Text == "flordia")
    {
        StateTax = 0.0503;
    }if (textBox1.Text == "Georgia" || textBox1.Text == "georgia")
    {
        StateTax = 0.0562;
    }if (textBox1.Text == "Hawaii" || textBox1.Text == "hawaii")
    {
        StateTax = 0.0985;
    }if (textBox1.Text == "Idaho" || textBox1.Text == "idaho")
    {
        StateTax = 0.0736;
    }if (textBox1.Text == "Illinois" || textBox1.Text == "illinois")
    {
        StateTax = 0.0562;
    }if (textBox1.Text == "Indiana" || textBox1.Text == "indiana")
    {
        StateTax = 0.0648;
    }if (textBox1.Text == "Iowa" || textBox1.Text == "iowa")
    {
        StateTax = 0.0591;
    }if (textBox1.Text == "Kansas" || textBox1.Text == "kansas")
    {
        StateTax = 0.0654;
    }if (textBox1.Text == "Kentucky" || textBox1.Text == "kentucky")
    {
        StateTax = 0.0734;
    }if (textBox1.Text == "Louisiana" || textBox1.Text == "louisiana")
    {
        StateTax = 0.0685;
    }if (textBox1.Text == "Maine" || textBox1.Text == "maine")
    {
        StateTax = 0.0770;
    }if (textBox1.Text == "Maryland" || textBox1.Text == "maryland")
    {
        StateTax = 0.0559;
    }if (textBox1.Text == "Massachusetts" || textBox1.Text == "massachusetts")
    {
        StateTax = 0.0630;
    }if (textBox1.Text == "Michigan" || textBox1.Text == "Michigan")
    {
        StateTax = 0.0672;
    }if (textBox1.Text == "Minnesota" || textBox1.Text == "minnesota")
    {
        StateTax = 0.0802;
    }if (textBox1.Text == "Mississippi" || textBox1.Text == "mississippi")
    {
        StateTax = 0.0740;
    }if (textBox1.Text == "Missouri" || textBox1.Text == "missouri")
    {
        StateTax = 0.0517;
    }if (textBox1.Text == "Montana" || textBox1.Text == "montana")
    {
        StateTax = 0.0708;
    }if (textBox1.Text == "Nebraska" || textBox1.Text == "nebraska")
    {
        StateTax = 0.0610;
    }if (textBox1.Text == "Nevada" || textBox1.Text == "开发者_如何学Gonevada")
    {
        StateTax = 0.0612;
    }if (textBox1.Text == "New Hampshire" || textBox1.Text == "new hampshire")
    {
        StateTax = 0.0387;
    }if (textBox1.Text == "New Jersey" || textBox1.Text == "new jersey")
    {
        StateTax = 0.0661;
    }if (textBox1.Text == "New Mexico" || textBox1.Text == "new mexico")
    {
        StateTax = 0.0826;
    }if (textBox1.Text == "New York" || textBox1.Text == "new york")
    {
        StateTax = 0.0676;
    }if (textBox1.Text == "North Carolina" || textBox1.Text == "north carolina")
    {
        StateTax = 0.0726;
    }if (textBox1.Text == "North Dakota" || textBox1.Text == "north dakota")
    {
        StateTax = 0.0711;
    }if (textBox1.Text == "Ohio" || textBox1.Text == "Ohio")
    {
        StateTax = 0.0609;
    }if (textBox1.Text == "Oklahoma" || textBox1.Text == "oklahoma")
    {
        StateTax = 0.0621;
    }if (textBox1.Text == "Oregon" || textBox1.Text == "oregon")
    {
        StateTax = 0.0576;
    }if (textBox1.Text == "Pennsylvania" || textBox1.Text == "pennsylvania")
    {
        StateTax = 0.0617;
    }if (textBox1.Text == "Rhode Island" || textBox1.Text == "rhode island")
    {
        StateTax = 0.0640;
    }if (textBox1.Text == "South Carolina" || textBox1.Text == "south carolina")
    {
        StateTax = 0.0619;
    }if (textBox1.Text == "South Dakota" || textBox1.Text == "south dakota")
    {
        StateTax = 0.0423;
    }if (textBox1.Text == "Tennessee" || textBox1.Text == "tennessee")
    {
        StateTax = 0.0539;
    }if (textBox1.Text == "Texas" || textBox1.Text == "texas")
    {
        StateTax = 0.0438;
    }if (textBox1.Text == "Utah" || textBox1.Text == "utah")
    {
        StateTax = 0.0728;
    }if (textBox1.Text == "Vermont" || textBox1.Text == "vermont")
    {
        StateTax = 0.1060;
    }if (textBox1.Text == "Virginia" || textBox1.Text == "virginia")
    {
        StateTax = 0.0563;
    }if (textBox1.Text == "Washington" || textBox1.Text == "washington")
    {
        StateTax = 0.0648;
    }if (textBox1.Text == "West Virginia" || textBox1.Text == "west virginia")
    {
        StateTax = 0.0834;
    }if (textBox1.Text == "Wisconsin" || textBox1.Text == "wisconsin")
    {
        StateTax = 0.0693;
    }if (textBox1.Text == "Wyoming" || textBox1.Text == "wyoming")
    {
        StateTax = 0.0778;
    } if (textBox1.Text == "" || textBox1.Text == "")
    {
        string messageBoxText = "Their is No State Entered into the first pages  State Textbox";
        MessageBox.Show(messageBoxText);
        return;

    }

What I'm trying to do is make this textbox1 searchable so that i can have it go through and only allow one of the states to be entered in it, if not then an error message will show up. Now i know this can be done and sense i haven't found any info on it I'm guessing its quit easy. but yet i need help haha So if someone could help me with this that would be lovely.


I hate to come right out and say it, but since this is a teaching website, I will: your current solution is ugly. At a minimum, you should provide some sort of lookup table for yourself, whether it be a dictionary, an XML file, or database table, you shouldn't have to duplicate that many lines of code. Something like this immediately comes to mind and would greatly simplify your code.

var rates = new Dictionary<string, decimal> 
{
    { "alabama", 0.0570 },
    { "alaska", 0.1167 },
    ...
    { "wyoming", 0.0778 }
}

With this structure, you can start solving the problems you're looking to solve. For example, looking up the rate becomes trivial:

string stateKey = textbox1.Text.Trim().ToLower();

if (rates.ContainsKey(stateKey))
{
    return rates[stateKey];
} 
else 
{
    throw new Exception("Missing rate for state " + stateKey);
}

And at the same time, I've limited what is input into the textbox using the keys in the rate dictionary as your set of possible values.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜