如何检查表单上的任何标签是否包含单词" abc"?

时间:2018-06-07 18:13:18

标签: c# wpf

我想创建一个条件来检查是否有任何标签包含单词" abc"如果是的话,它会阻止按钮。我的格式为label1,label2,label3等。

我尝试使用主标签来设置包含的检查但是没有这样的东西。

定义后:

Label slabel = new Label();

我正在尝试办理登机手续"如果"但总是返回带有null的错误。

if(slabel.Contains("abc"))

请帮忙!

1 个答案:

答案 0 :(得分:0)

试试这个:

Windows Forms

bool found = false;
foreach (Control c in this.Controls)
{
    if (c is Label && c.Text.Contains("abc"))
    {
        found = true;
        break;
    }
}
button1.Enabled = !found;

WPF

bool found = false;
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(this.Content as DependencyObject); i++)
{
    var v = VisualTreeHelper.GetChild(this.Content as DependencyObject, i);
    if (v is Label && (v as Label).Content.ToString().Contains("abc"))
    {
        found = true;
        break;
    }
}
button.IsEnabled = !found;