Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何显示标签中两个复选框的结果,在WPF中选中哪一个或哪两个复选框?_C#_Wpf_Xaml_Xamarin_Uwp - Fatal编程技术网

C# 如何显示标签中两个复选框的结果,在WPF中选中哪一个或哪两个复选框?

C# 如何显示标签中两个复选框的结果,在WPF中选中哪一个或哪两个复选框?,c#,wpf,xaml,xamarin,uwp,C#,Wpf,Xaml,Xamarin,Uwp,非常感谢你的帮助。 我是编程界的新手,所以我真的需要你们的帮助 问题是: 我有两个复选框和一个标签,通过选中标签应该显示的每一个复选框,选择哪一个。如果两个都被选中,则标签应显示两个都被选中,但分为两行。如果未选中,则应清除标签中的相关句子,而不是整个文本 我的XML: <Grid HorizontalAlignment="Center" VerticalAlignment="Center"> <StackPanel Width="350"

非常感谢你的帮助。 我是编程界的新手,所以我真的需要你们的帮助

问题是:

我有两个复选框和一个标签,通过选中标签应该显示的每一个复选框,选择哪一个。如果两个都被选中,则标签应显示两个都被选中,但分为两行。如果未选中,则应清除标签中的相关句子,而不是整个文本

我的XML:

<Grid HorizontalAlignment="Center" 
          VerticalAlignment="Center">
        <StackPanel Width="350">
            <CheckBox x:Name="CheckboxOne" 
                      Content="First Checkbox"
                      Checked="FirstCheckbox"
                      Unchecked="UncheckedOne"/>
            <CheckBox x:Name="CheckboxTwo" 
                      Content="Second Checkbox"
                      Checked="SecondCheckbox"
                      Unchecked="UncheckedTwo"/>
            <Label Name="LabelText"
               Height="70"
               Grid.Column="1"/>

        </StackPanel>
    </Grid>
我的一个期望应该是这样,以防两者都被检查

正在选中第一个复选框

正在选中第二个复选框


非常感谢你的帮助

以下代码应该执行您想要的操作:

    private void FirstCheckbox(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void SecondCheckbox(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void UncheckedOne(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void UncheckedTwo(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void MakeLable()
    {
        if (CheckboxOne.IsChecked && CheckboxTwo.IsChecked)
        {
            LabelText.Content = $"First checkbox is being checked{Environment.NewLine}Second checkbox is being checked";
        }
        else if (CheckboxOne.IsChecked && !CheckboxTwo.IsChecked)
        {
            LabelText.Content = "First checkbox is being checked";
        }
        else if (!CheckboxOne.IsChecked && CheckboxTwo.IsChecked)
        {
            LabelText.Content = "Second checkbox is being checked";
        }
        else
        {
            LabelText.Content = "";
        }
    }

两个不同的句子是什么意思?嘿,谢谢你的回答!我的意思是两行。非常感谢,首先我必须在每次检查完财产后写(=true)。现在,当两个复选框都被选中时,在第一句之前几乎没有空格出现。顺便说一下,非常感谢!你可以投票支持我的回答并选择它作为答案来感谢我;)哦,哈哈!我很抱歉!我不知道,我是个农民!我希望,我点击了正确的图标:)
    private void FirstCheckbox(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void SecondCheckbox(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void UncheckedOne(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void UncheckedTwo(object sender, RoutedEventArgs e)
    {
        MakeLable();
    }
    private void MakeLable()
    {
        if (CheckboxOne.IsChecked && CheckboxTwo.IsChecked)
        {
            LabelText.Content = $"First checkbox is being checked{Environment.NewLine}Second checkbox is being checked";
        }
        else if (CheckboxOne.IsChecked && !CheckboxTwo.IsChecked)
        {
            LabelText.Content = "First checkbox is being checked";
        }
        else if (!CheckboxOne.IsChecked && CheckboxTwo.IsChecked)
        {
            LabelText.Content = "Second checkbox is being checked";
        }
        else
        {
            LabelText.Content = "";
        }
    }