使用组合框出现另一个组合框C#

本文关键字:组合 另一个 | 更新日期: 2023-09-27 18:25:55

我想这样做,一旦我选择了first_ComboBox的第一个项目(Student Information),就会出现second_ComboBox

我该如何实现

在cs代码中

private void first_ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
    }
    private void second_ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
    }

在XAML 中

<StackPanel Margin="97,47,171,499" Orientation="Horizontal" Grid.Row="1">
        <TextBlock HorizontalAlignment="Left" TextWrapping="Wrap" Text="Where You want to Control" VerticalAlignment="Top" Height="82" Width="463" FontSize="36"/>
        <ComboBox x:Name="first_ComboBox" HorizontalAlignment="Left" VerticalAlignment="Top" Width="560" Height="42" SelectionChanged="first_ComboBox_SelectionChanged">
            <x:String>Student Information</x:String>
            <x:String>Staff Information</x:String>
            <x:String>Academic Information</x:String>
        </ComboBox>
    </StackPanel>
    <StackPanel Margin="97,172,171,374" Orientation="Horizontal" Grid.Row="1">
        <TextBlock HorizontalAlignment="Left" TextWrapping="Wrap" Text="Select the Field" VerticalAlignment="Top" Height="82" Width="463" FontSize="36"/>
        <ComboBox x:Name="second_ComboBox" HorizontalAlignment="Left" VerticalAlignment="Top" Width="560" Height="42" SelectionChanged="second_ComboBox_SelectionChanged">
            <x:String>Student Name</x:String>
            <x:String>Student Address</x:String>                      
        </ComboBox>
    </StackPanel>

使用组合框出现另一个组合框C#

在Form main上,您可以将第二个组合框的可见性设置为false,然后在第一个组合框选择更改时将其设置为true,类似于此

  public MainWindow()
    {
        InitializeComponent();
        second_ComboBox.Visibility = Visibility.Collapsed;
    }
    private void first_ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        var selecteditem = first_ComboBox.SelectedItem as string;
        if (selecteditem != null)
        {
            second_ComboBox.Visibility = Visibility.Visible;
        }
    }

在初始化时使第二个组合框可视地隐藏

    public MainWindow()
{
    InitializeComponent();
    second_ComboBox.Visibility = Visibility.Collapsed;
}
private void first_ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
       first_ComboBox.Visibility = System.Windows.Visibility.Visible;
}