0

我正在尝试通过以下代码获取列表框项。基本上我要做的是创建一个 tempdatelist,然后将 Listbox 的 itemsource 设置为 tempdatelist。

if (App.Saveholidayplan[App.selectedlistindex].travel.Count > 0)       
    foreach (var dictobj in App.Saveholidayplan[App.selectedlistindex].travel[0].DummyRepository)                
        tempdatelist.Add(dictobj.Key);


lst_mainlist.ItemsSource = tempdatelist; 

ListBoxItem item = this.lst_mainlist.ItemContainerGenerator.ContainerFromIndex(i) as ListBoxItem; 

//* item is alway null, that is the problem
if(item != null)

但在上面的代码项中返回 null。

当我在线查看一些建议调用ItemContainerGenerator.StatusChanged事件时。

但我无法在 WP7 中找到此事件?WP7 中是否有 StatusChanged 事件,如果没有,还有什么替代方法?

4

1 回答 1

1

我也有这个问题。解决方案是使用调度程序等待 UI 呈现,如下所示:

this.Dispatcher.BeginInvoke(() =>
{
   ListBoxItem item = this.lst_mainlist.ItemContainerGenerator.ContainerFromIndex(i);
   //...
});
于 2013-12-20T00:00:44.917 回答