C# 在listview上闪烁选定的索引

C# 在listview上闪烁选定的索引,c#,winforms,listview,C#,Winforms,Listview,我正在尝试使用计时器刷新列表视图。 代码工作正常,但问题是selectedindex正在闪烁,可能是因为数据/ui每1秒重新加载一次 我想要的是,当用户导航时,我希望selectedindex保留而不闪烁currentlist高亮显示 那里的145交易编号突出显示。。。由于计时器的原因,它每1秒闪烁一次突出显示。如何防止它闪烁?先谢谢你 这是我的密码: public OrderCashieringView() { Timer time = new Timer()

我正在尝试使用
计时器刷新列表视图。
代码工作正常,但问题是
selectedindex
正在闪烁,可能是因为数据/ui每1秒重新加载一次

我想要的是,当用户导航时,我希望
selectedindex
保留而不闪烁currentlist高亮显示

那里的
145
交易编号突出显示。。。由于计时器的原因,它每1秒闪烁一次突出显示。如何防止它闪烁?先谢谢你

这是我的密码:

    public OrderCashieringView()
    {
        Timer time = new Timer();
        time.Interval = (10 * 100);
        time.Tick += time_Tick;
        time.Start();
    }


    void time_Tick(object sender, EventArgs e)
    {
        if (lstOrders.IsDisposed == false)
        {
            int CurrentRow = lstOrders.SelectedIndex;
            LoadDataCore();
            lstOrders.SelectedIndex = CurrentRow;
        }
    }


    void LoadDataCore()
    {
            if (txtSearchOrderNumber.Text == String.Empty)
            {
                _model = svc.GetForPayment();
            }
            else
            {
                _model = svc.GetForPayment().Where(a => a.TransactionNumber.Contains(txtSearchOrderNumber.Text)).ToArray();
            }

            if (lstOrders.InvokeRequired)
            {
                this.Invoke(new MethodInvoker(() =>
                {
                    lstOrders.DataSource = _model.ToArray();
                }));
            }
            else
            {
                lstOrders.DataSource = _model.ToArray();
            }

    }

尝试将Listview的SelectedValue绑定到一个属性,我假设刷新后选择将保持不变。SelectedIndex将使用绑定到列表的新数据刷新。
如果您特别需要SelectedIndex,您可以从绑定到列表视图的列表中找到所选值的索引。

在适当的情况下调用列表视图的
BeginUpdate
EndUpdate
方法。@SamAxe uhmm。。。是在加载数据核心之前还是之后?阅读这些函数的文档,你就会知道。@SamAxe你能给我一些链接吗?我真的是个新手,所以请容忍我当然,给你:嗯,我真的不明白。。你的意思是我在绑定的数据上绑定所选索引?你在使用WPF吗?我说的是将Xaml中列表的SelectedValue绑定到属性,刷新后选择将保留。我正在使用telerik winforms。。。。。我还不知道如何将列表的值绑定到xaml,先生。。。我正在做的是创建一个模型类并将值存储在那里。。。。