所以我有4个不同的文本框,每个文本框只能接受1个字符。这个值需要不同,所以最短的代码是什么,我还需要知道/记住哪些文本框具有相同的值,以便我可以在它们上设置错误提供程序。
不能比较每一个。
答案 0 :(得分:2)
List<TextBox> myTextBoxes = new List<TextBox>();
//Add your textboxes to the list here...
var distinctBoxes = myTextBoxes.GroupBy(t=>T.Text);
if(distinctBoxes.Count() == 4)
{
//All values are distinct
}
else
{
foreach(var g in distinctBoxes.Where(g=>g.Count() > 1))
{
//These are the duplicate boxes
}
}
答案 1 :(得分:0)
如果不对每个人进行比较,就很难做到你所描述的内容,所以这里有一个快速简便的方法来检查是否有任何重复。
public void Foo()
{
string[] allTextBoxes = { textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text }; // Put textboxes into an array.
if (allTextBoxes.Distinct().Count() != allTextBoxes.Count()) // Check if the string has any duplicates.
{
// Do some code.
}
}