检查电子邮件中的标签并删除特定标签

时间:2013-06-18 07:36:25

标签: c# visual-studio-2010 email foreach

我有这个代码,假设检查每个标签的单词“关闭”,并且在完成检查后,它将删除标签中的所有文本,并将未标记为“已关闭”的所有内容放入TO部分一封电子邮件。我不知道我做错了什么,但它不起作用。有什么建议吗?

foreach (Control c in Controls)
        {
            if (c is Label)
            {
                // Grab label
                Label lbl = c as Label;
                if (lbl.Text.Contains("closed"))
                {
                    lbl.Text.Replace("closed", "");
                }

            }
        }

2 个答案:

答案 0 :(得分:2)

显然您忘记分配修改后的文本值,因为Replace()方法将替换后的文本作为返回值返回:

lbl.Text = lbl.Text.Replace("closed", "");

但是您的代码可能存在更多问题,而且您的问题与电子邮件有何关联并不十分清楚。

答案 1 :(得分:0)

最初接受您的输入(即列表中的标签列表)

 List<string> TotalLabels = GetAllLabels();
    for (int i = 0; i < TotalLabels.Count; i++)
    {
    if (TotalLabels[i].Contains("closed"))
    {
    TotalLabels.RemoveAt(i);
    i--;
    }
    }

现在你有一个你想要删除“关闭”的最终列表。