同じwpfウィンドウに2つのコンボボックスがあります。 最初のコンボボックスの最初の項目はselectversionであり、デフォルトで選択されています(isselected = true)。最初のコンボボックスの最初の項目が選択されている場合、2番目のコンボボックスを無効にする必要があります。
私はフォローしてみました、
If(absversion.selectedindex!= 0)
Secondcombo.isenabled = false://ここでnull参照例外が発生しています
その他 Secondcombo.isenabled = true:
page_loadedイベントi veで、
Secondcombo.isenabled = false //したがって、Secondcomboはデフォルトで無効になり、ロードされます。
誰でも私を助けてください、これを成し遂げるために。
回答:
回答№1の場合は3私は、分離コードよりもXAMLでこれを行う傾向があります。
<Grid x:Name="LayoutRoot">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ComboBox Grid.Row="0" x:Name="ComboBox1">
<ComboBoxItem>Item 1</ComboBoxItem>
<ComboBoxItem>Item 2</ComboBoxItem>
<ComboBoxItem>Item 3</ComboBoxItem>
</ComboBox>
<ComboBox Grid.Row="1">
<ComboBox.Style>
<Style TargetType="{x:Type ComboBox}">
<Setter Property="IsEnabled" Value="True" />
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ComboBox1, Path=SelectedIndex}" Value="0">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</ComboBox.Style>
<ComboBoxItem>Item 1</ComboBoxItem>
<ComboBoxItem>Item 2</ComboBoxItem>
<ComboBoxItem>Item 3</ComboBoxItem>
</ComboBox>
</Grid>