在Windows Phone中列出选择器选择问题

时间:2014-04-07 09:34:02

标签: c#-4.0 windows-phone-8 listpicker

List<CLASS> list = new List<CLASS>();

        list = (from query in doc.Descendants("row")
                   select new CLASS
                   {
                       Id = Convert.ToInt64(query.Element("Id").Value),
                       Name = query.Element("Name").Value,
                       title = query.Element("title").Value
                   }).ToList();

        listPicker2.DataContext = list;

如何在Windows Phone中的列表选择器中显示列表选择器所选项目, 我在页面加载事件中有绑定列表选择器,但每次选择列表选择器项目时,在一秒钟内它会自动选择第一个项目, 怎么解决这个?

1 个答案:

答案 0 :(得分:1)

好的一招可能是这样的

在页面顶部采用全局int变量

int refreshCount=0;
列表填充后

将此refreshCount分配给某个int值,例如1

    List<CLASS> list = new List<CLASS>();

    list = (from query in doc.Descendants("row")
               select new CLASS
               {
                   Id = Convert.ToInt64(query.Element("Id").Value),
                   Name = query.Element("Name").Value,
                   title = query.Element("title").Value
               }).ToList();

    listPicker2.DataContext = list;
    refreshCount=1;

现在用一个简单的条件包含这个完整的块,你的代码将变成这样的

if(refreshCount==0)
{
        List<CLASS> list = new List<CLASS>();
        list = (from query in doc.Descendants("row")
                   select new CLASS
                   {
                       Id = Convert.ToInt64(query.Element("Id").Value),
                       Name = query.Element("Name").Value,
                       title = query.Element("title").Value
                   }).ToList();

        listPicker2.DataContext = list;
        refreshCount=1;
}

通过这个你应该摆脱你的问题。

相关问题