【问题标题】:cant select same item from listbox after removal删除后无法从列表框中选择相同的项目
【发布时间】:2013-02-04 16:18:08
【问题描述】:

我有一个列表框,并且谁的 itemsource 绑定到一个具有 SelectionMode="Single" 的列表。我的列表框还为其设置了 ItemContainerStyle,如下所示:

<ListView.ItemContainerStyle>
    <Style TargetType="{x:Type ListViewItem}">
        <Style.Resources>
            <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent" />
            <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent" />
        </Style.Resources>
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter Property="Background" Value="Blue" />
            </Trigger>
        </Style.Triggers>
    </Style>
</ListView.ItemContainerStyle> 

当我从列表中删除一个项目时,我无法重新选择该项目,除非我选择了一个不同的项目然后返回它。任何人都可以对此提供意见吗?

【问题讨论】:

    标签: wpf listbox


    【解决方案1】:

    根据您从列表中删除项目的方式,删除后ListView 可能会失去焦点,这可能会影响SelectedItemHighlight Color。该项目实际上是Selected,但对用户来说似乎不是,因为ListView 不是活动控件。例如,如果您单击表单上其他位置的按钮以从 ListView 中删除项目,则可能会发生这种情况。

    在删除操作后尝试在您的 ListView 实例上调用 Focus()

    【讨论】:

    • 我将如何使用 MVVM 来做到这一点?
    • 您能否发布一些关于您当前如何从列表中删除项目的代码?如果我看到您当前的实施,我将能够为您提供更多帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    • 2010-09-27
    • 1970-01-01
    相关资源
    最近更新 更多