1

でピボット コントロールを使用すると問題が発生しましたWindows Phone 8 SDK

ピボットは名前付きのリストにバインドし、Studentsクリックするとボタンを設定します。,新しい学生オブジェクトを新しく作成しStudents[2]、新しい値として設定します。これにより、下のスクリーンショットに示す重複の問題が発生しました。でこの問題が発生した人はいWP8 SDKますか?

ここにコードがあります

  public MainPage()
    {
        InitializeComponent();
        this.DataContext = this;

        // Sample code to localize the ApplicationBar
        //BuildLocalizedApplicationBar();
        InitiList();
    }

    private void Button_Click_1(object sender, RoutedEventArgs e)
    {
        int index = 2;
        Students[index] = new Student();
        Students[index].Name = "tian";
        Students[index].College = "shida";
    }

    private ObservableCollection<Student> _students;
    public ObservableCollection<Student> Students
    {
        get { return _students; }
        set
        {
            _students = value;
            RaisePropertyChanged("Students");
        }
    }

    private void InitiList()
    {
        Students = new ObservableCollection<Student>();
        Students.Add(new Student { Name="a",College="aa"});
        Students.Add(new Student { Name = "b", College = "aa" });
        Students.Add(new Student { Name = "c", College = "aa" });
        Students.Add(new Student { Name = "d", College = "aa" });
        Students.Add(new Student { Name = "e", College = "aa" });
    }

この o/p イメージをチェックしてください:

ここに画像の説明を入力

4

2 に答える 2

0

学生を変更していますが、学生にアクセスしても RaisePropertyChanged を呼び出す Set が起動されないため、RaisePropertyChanged は起動されません。これは問題である可能性があります。今はテストできません。

于 2012-11-06T03:35:52.003 に答える
0

同じ問題が発生しました。Add メソッドを使用する代わりに、コンストラクターの ObservableCollection にアイテムを追加することで修正しました。ObservableCollection クラスのバグのようです。コードを次のように変更してみてください。

 private void InitiList()
{
    Students = new ObservableCollection<Student>(new [] {
    new Student { Name="a",College="aa"}),
    new Student { Name = "b", College = "aa" }),
    new Student { Name = "c", College = "aa" }),
    new Student { Name = "d", College = "aa" }),
    new Student { Name = "e", College = "aa" })
    });
}
于 2013-01-21T05:37:48.407 に答える