ListView - выбрать индекс только программно - PullRequest
0 голосов
/ 23 марта 2012

Я пытаюсь реализовать список (или просмотр списка):

<ListView ItemsSource="{Binding Players}" SelectedIndex="{Binding SelectedIndex}">

Моя проблема в том, что я хочу привязать выбранный индекс к свойству в выделенном коде. Это работает только при запуске формы, но мне нужно отключить пользователя, чтобы изменить выбор. Выбор будет изменен ТОЛЬКО программно.

Спасибо за все советы или решения:)

Ответы [ 3 ]

1 голос
/ 29 марта 2012

Итак, рабочий раствор:

private void playersList_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    if (sender.GetType() == typeof(ListView))
    {
        (sender as ListView).SelectedIndex = GameObserver.Instance.core.SelectedIndex;
        e.Handled = true;
    }
}

В XAML:

<ListView ItemsSource="{Binding Players}" SelectedIndex="{Binding SelectedIndex}" SelectionChanged="playersList_SelectionChanged">

И ограниченное свойство:

private int selectedIndex = 1;
public int SelectedIndex
{
    get
    {
        return selectedIndex;
    }
}
0 голосов
/ 23 марта 2012

Просто нет набора

 Public Int SelectedIndex 
 {
      get { return selectedindex; }  
 }

 public void mysub()
 {
      selectedindex = 2; 
      NotifyPropertyChanged("SelectedIndex");
 }
0 голосов
/ 23 марта 2012

У вас есть две задачи здесь:

Программный выбор: WPF ListView Программно выбрать элемент

И отключение выбора пользователя: WPF ListView отключить выбор

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...