0

我正在尝试实现列表框(或列表视图):

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

我的问题是,我想将选定的索引绑定到代码隐藏中的属性。它仅适用于表单启动,但我需要禁用用户更改选择。Selectin 将仅以编程方式更改。

感谢所有建议或解决方案:)

4

3 回答 3

1

所以,工作解决方案:

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;
    }
}
于 2012-03-29T09:38:18.660 回答
0

您在这里有两个任务:

以编程方式选择:WPF ListView 以编程方式选择项目

并禁用用户选择:WPF ListView 关闭选择

于 2012-03-23T10:03:32.267 回答
-1

只是没有设置

 Public Int SelectedIndex 
 {
      get { return selectedindex; }  
 }

 public void mysub()
 {
      selectedindex = 2; 
      NotifyPropertyChanged("SelectedIndex");
 }
于 2012-03-23T10:22:00.610 回答