如何检查tabcontrol中的另一个选项卡中是否已选中复选框

时间:2017-01-11 00:34:34

标签: c# wpf checkbox tabcontrol

所以我对TabControl还不熟悉,我已查看了一些教程,阅读了一些帖子,我无法找到关于如何检查是否在一个选项卡中选中复选框以及文本框是否包含内容的任何内容它,在另一个标签中,我认为它被称为检查属性,但我不完全确定。

因此成像你有这个WPF,tabControl有两个标签和tabControl外面的一个按钮。 第一个选项卡包含1个复选框,第二个选项卡包含文本框

现在我如何检查是否选中了复选框以及textbox.text != ""

- UPDATE-- 正如我刚刚发现的那样,复选框是全局的,因为它们在同一个窗口中,如果文本框在另一个窗口中,我问fox如何做到这一点。

2 个答案:

答案 0 :(得分:1)

您可以将CheckBoxes的Name属性设置为唯一的属性,然后在后面的代码中检查它时使用它来获取正确的CheckBox。

在XAML中设置名称如下所示:

<CheckBox Name="myCheckBox" />

之后你可以在你的代码中使用这样的代码来查看你的CheckBox是否已被检查:

if (myCheckBox.IsChecked) {
    Console.WriteLine("my checkbox is checked.");
}

要检查是否选中了另一个Window或UserControl中的CheckBox,您可以向Window添加一个属性,该属性包含CheckBox检查状态更改时更新的CheckBox。

public bool MyTextBoxIsChecked {get; set;}

答案 1 :(得分:0)

正如FlyingFox所回答的,我认为复选框是全局的。

<Checkbox Name="myCheckBox" />

private void myCheckBox_CheckedChanged(object sender, EventArgs e)
{
    if (myCheckBox.Checked)
    {
        Console.WriteLine("my checkbox is checked.");
    }
    else if (!myCheckBox.Checked)
    {
        Console.WriteLine("my checkbox is not checked."); 
    }
}
  

检查文本框是否包含文本:

if (textbox1.Text.Length > 0)
{
  Console.WriteLine("Textbox has text"); 
}