首页 > 解决方案 > 如何检查表格上的任何标签是否包含“abc”一词?

问题描述

我想创建一个条件来检查是否有任何标签包含单词“abc”,如果包含,它会阻止按钮。我有标签1、标签2、标签3等形式。

我尝试让主标签在包含中设置检查,但没有这样的事情。

定义后:

Label slabel = new Label();

我正在尝试签入“if”,但总是返回 null 错误。

if(slabel.Contains("abc"))

请帮忙 !

标签: c#wpf

解决方案


尝试这个:

对于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;

推荐阅读