C# 检查列表是否包含特定行C处的文本#

C# 检查列表是否包含特定行C处的文本#,c#,list,if-statement,contains,C#,List,If Statement,Contains,下面是我的代码,将第一行的5个文本框添加到另一个列表(averageLetter1) 我想创建一个IF语句来检查列表是否包含特定行的文本,如果是,则返回true //average for letter 1 of each password averageLetter1.Add(pw.ElementAt(0)); averageLetter1.Add(pw1.ElementAt(0)); averag

下面是我的代码,将第一行的5个文本框添加到另一个列表(averageLetter1)

我想创建一个IF语句来检查列表是否包含特定行的文本,如果是,则返回true

//average for letter 1 of each password
                averageLetter1.Add(pw.ElementAt(0));
                averageLetter1.Add(pw1.ElementAt(0));
                averageLetter1.Add(pw2.ElementAt(0));
                averageLetter1.Add(pw3.ElementAt(0));
                averageLetter1.Add(pw4.ElementAt(0));


                long AverageL1 = (averageLetter1.Sum()) / 5;
                MessageBox.Show(AverageL1.ToString());
我已尝试使用Contains方法,但无法指定特定行

(而且我对C#还相当陌生,所以我还在学习。)


任何帮助都将不胜感激:)

如果您想查看averageLetter1中的某个条目是否包含某些文本,则可以使用
averageLetter1[lineNumber]。contains(text)
。如果要查看其中一个条目是否等于某个文本,则可以使用
averageLetter[lineNumber]==text
。如果您想知道其中任何一行是否等于某个文本并知道索引,则可以使用:

        var matches = averageLetter1.Where(x => x == text).Select((x, index) => index).ToList();

        if (matches.Count == 0)
            MessageBox.Show("No matches");
        else
        {
            // There may be more than one match, so iterate over the matches
            foreach (var matchIndex in matches)
            {
                MessageBox.Show("text matched at " + matchIndex);
            }
        }

你想达到什么目标?还请包括您试图解决的问题,您的问题看起来像一个问题。换句话说,包括一个例子,文本框中可以包含什么以及预期结果是什么。好吧……我有5个文本框(pw-pw4),我希望提取每个文本框的第一行,并取所有这些文本框的平均值,这些文本框已经添加到列表“averageLetter1”中,基本上我需要一个If语句,因此,如果存在一行,则在每个文本框上执行此操作,如果不返回false??您所说的“行的平均值”是什么意思?平均长度?字符ASCII值的平均值?它总是整数,你需要它的平均值吗?你看过TextBox的Lines属性了吗?这对你来说应该很方便!是的,行是长的,它是秒表的毫秒值。在C#或.NET框架中没有MsgBox这样的东西。您可能指的是MsgBox的经典VB(在使用.NET framework时也强烈反对使用它)。你是说。。。MessageBox.Show(…)你是完全正确的。我把它改成了MessageBox。