如何防止第一项的autoselection在GridView控件上的数据绑定?(how to pre

2019-09-28 05:31发布

当我我的数据绑定到GridView的一个ObservableCollection,集合的第一项被自动选择。 该SelectionMode GridView控件的属性设置为multiple 。 有没有一些方法来防止这种情况自动选择? 或什么事件,我应该听这样我就可以重新设置SelectedIndex在GridView的回-1?

Answer 1:

设置IsSynchronizedWithCurrenItem属性为false在XAML GridView控件



Answer 2:

有实际上可以一个非常简单的解决方案。 我设定SelectionMode GridView控件来None在XAML。 然后,创建页面时,我改变SelectionModeMultiple

        publicPage()
        {
            this.InitializeComponent();
            itemListView.SelectionMode = ListViewSelectionMode.Multiple;
        }

但是,我有这个问题似乎是我自己的程序引起的。 这是我遇到的问题的解决方法,该autoselection是不是默认的行为。

http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/da7e9f3b-9a3e-47ca-8223-b50539293f5f



Answer 3:

我的情况是相反的。 我有一个GridView这是绑定到ObservableCollection ,我想选择的第一个项目,但它不是! 我想通了,为什么是这样的话,虽然。 有2种方式来产生我ObservableCollection ,并根据所法我选择了,第一个项目或者选定或未。

例如,我在我的视图模型的可变ITEMLIST我结合到我的GridView

public ObservableCollection<Item> ItemList { get; private set; }

方法1(无选择)

public void getData()
{
    var myList = // get your list here
    for (int i = 0; i < myList.Count; i++)
    {
        this.ItemList.add(myList[i]);
    }
}

方法2(第一项自动选择)

public void getData()
{
    var myList = // get your list here
    this.ItemList = myList
}


文章来源: how to prevent autoselection of first item in GridView on databind?