2016-04-19 83 views
0

Here我有三个复选框和一个文本框,我想教我的应用程序一些字符,因此我需要将文本框中的字符输入分类为三类。文本框应该只包含一个字符(已解决),在输入字符后,我通过选中三个复选框中的一个来对其进行分类。如果输入数字,我检查“数字”复选框,如果输入的字母(小写/大写)我检查“大写”复选框,如果符号,我检查“AllSymbols”复选框。 如果我输入Digit并检查大写字母或AllSymbols而不是“DIGIT”复选框,它应该在按下OK之后抛出错误通知(已解决)。我需要两个其他类的相同逻辑。C#根据复选框限制和分类文本框输入

public void GetParameters(out string charCode, out int classes) 
{ 
    charCode = textBoxCharCode.Text; 

    try 
    { 
     if (checkBoxDigit.Checked) Convert.ToInt16(textBoxCharCode.Text); 
    } 

    catch 
    { 
     MessageBox.Show("You should enter Digits", "Error", MessageBoxButtons.OK); 
    } 

    if (charCode.Length != 1) MessageBox.Show("You should enter only One character", "Error", MessageBoxButtons.OK); 

    classes = (checkBoxDigit.Checked ? (int)EOCRClass.Digit : 0) | (checkBoxUpperCase.Checked ? (int)EOCRClass.UpperCase : 0) | (checkBoxAllSymbols.Checked ? (int)EOCRClass.LowerCase : 0); 
} 

有什么建议吗?

+0

是唯一的问题“如何检查一个字符串是否只包含大写或小写字符?”或者你还需要一些围绕文本框验证的东西? –

+0

我编辑了我的问题,请检查它。我需要检查文本框是否有字母或符号,并对其进行分类,否则,按OK按钮后出现错误。 – Adi

+0

不幸的是,我仍然不完全理解你..在['Char'](https://msdn.microsoft.com/en-us/library/system.char.aspx)类有.NET中的方法框架,可以识别字符,UpperCase字符等,希望可以帮助你.. –

回答

0

创建3个正则表达式。一个用于数字(数字)(0级),一个用于大写(1级),另一个用于所有符号(2级)。 在确定按钮单击事件中,选中选中的复选框(类为0或1或2),并根据相应的正则表达式对文本框中的输入进行验证。 如果验证失败,则抛出错误通知。