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,先生。。。我正在做的是创建一个模型类并将值存储在那里。。。。