如何使用“;if语句“;wpf

本文关键字:wpf 语句 if 何使用 | 更新日期: 2023-09-27 17:58:39

我制作了一个由datePickercomboBox组成的应用程序。comboBox有一个从0到5的数字列表。当用户选择"1"时,我希望启用我的datePicker,但如果用户选择任何其他内容,我希望禁用datePicker。但是,由于某些原因,此代码不起作用,并且datePicker始终处于禁用状态。

我的代码和一样

xaml

<ComboBox x:Name="cbxNoClaims" Loaded="cbxNoClaims_Loaded" Grid.Row="13" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Top" Width="120"/>
<DatePicker Name="dpkClaim1" Loaded="dpkClaim1_Loaded" Grid.Row="13" Grid.Column="2"  HorizontalAlignment="Center" VerticalAlignment="Top"/>

主窗口.xaml.cs

private void cbxNoClaims_Loaded(object sender, RoutedEventArgs e)
{
    // ... A List.
    List<string> claim = new List<string>();
    claim.Add("0 ");
    claim.Add("1");
    claim.Add("2");
    claim.Add("3");
    claim.Add("4");
    claim.Add("5");

    // ... Get the ComboBox reference.
    var comboBox = sender as ComboBox;
    // ... Assign the ItemsSource to the List.
    comboBox.ItemsSource = claim;
    comboBox.SelectedIndex = 0;
}
private void dpkClaim1_Loaded(object sender, RoutedEventArgs e)
{
     DatePicker datePicker = sender as DatePicker;
    if ((string)cbxNoClaims.Item== "1")
    {
        dpkClaim1.IsEnabled = true;
    }
    else dpkClaim1.IsEnabled = false;
}

如何使用“;if语句“;wpf

在组合框上使用选择更改事件。

XAML:

<ComboBox x:Name="cbxNoClaims" SelectionChanged="cbxNoClaims_SelectionChanged" Grid.Row="13" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Top" Width="120"/>

代码:

private void cbxNoClaims_SelectionChanged(object sender, RoutedEventArgs e)
{
    if (cbxNoClaims.SelectedItem.ToString() == "1")
    {
        dpkClaim1.IsEnabled = true;
    }
    else 
    {
        dpkClaim1.IsEnabled = false;
    }
}