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

ここには 2 つのタスクがあります。

プログラムによる選択: 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 に答える