在Powershell中将WPF组合框重置为IsSelected值

4uqofj5v  于 2022-12-24  发布在  Shell
关注(0)|答案(2)|浏览(134)

不太确定我在这里错过了什么,但我在一个窗体中有几个组合框,我想点击"清除"按钮,并将所有值重置为原始SelectedItem值。
XML文件:

<Window

  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="MainWindow" Height="213" Width="513">

    <Grid>
        <ComboBox x:Name="cbox_Values" HorizontalAlignment="Left" Margin="247,77,0,0" VerticalAlignment="Top" Width="120">
            <ComboBoxItem IsSelected="True">Value1</ComboBoxItem>
            <ComboBoxItem>Value2</ComboBoxItem>
            <ComboBoxItem>Value3</ComboBoxItem>
        </ComboBox>
        <Button x:Name="btn_Clear" Content="Clear" HorizontalAlignment="Left" Margin="115,77,0,0" VerticalAlignment="Top" Width="86" Height="21" FontSize="11"/>
    </Grid>

</Window>

如果我这样做:

$wpf_btn_Clear.Add_Click({
    $wpf_cbox_Values.SelectedItem.Content = "Value1"
})

当前值被擦除:

如果我这样做:

$wpf_btn_Clear.Add_Click({
    $wpf_cbox_Values.SelectedItem.Content = "Value1"
    $wpf_cbox_Values.Items.Add("Value2")
    $wpf_cbox_Values.Items.Add("Value3")
})

我得到了双倍:

我正在寻找一个按钮来"重置"组合框,使其具有来自xml的原始IsSelected项。例如,如果我选择Value3,然后单击"清除"按钮,则值将返回Value1。这是在Powershell中实现的。

jfewjypa

jfewjypa1#

$wpf_cbox_Values.SelectedIndex = 0和/或$wpf_cbox_Values.SelectedItem = $wpf_cbox_Values.Items[0]应该可以工作。

ryoqjall

ryoqjall2#

ComboBox.SelectedIndex Property
或许可以试试...

$wpf_btn_Clear.Add_Click({
     $wpf_cbox_Values.SelectedIndex = 0
})

应保留您的值,但将组合框索引设置为零,这将是您的第一个条目(“Value1”)。

相关问题