如何使用“;if语句“;wpf
本文关键字:wpf 语句 if 何使用 | 更新日期: 2023-09-27 17:58:39
我制作了一个由datePicker
和comboBox
组成的应用程序。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;
}
在组合框上使用选择更改事件。
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;
}
}