重新加载页面时出现数据网格错误

我有一个添加客户 UI,它应用了一个数据网格来显示提供的条目,但是如果我在已经显示的同时重新选择添加客户,它将再次添加条目。


http://img4.mukewang.com/61752f240001462e07800157.jpg

第 1-3 行是原始行,第 4-6 行是重复行。有谁知道如何限制这种情况的发生?


在我的 MainActivity 中,我有一个带有 Frame 的菜单导航来填充 xaml 页面。下面是初始化类的代码。


private void AddCustomer_Click(object sender, RoutedEventArgs e)

{

    Main.Content = new AddCustomerUI();

}

Frame 被称为 Main,然后将 xaml 页面分配给它的 Main.content


public partial class AddCustomerUI : Page

{

    public AddCustomerUI()

    {

        InitializeComponent();

        SetupCustomer();

        customerDataGrid.ItemsSource = App.customers;

    }

    private void SetupCustomer()

    {

        var customer = new Customer { FirstName = "Timothy", LastName = "Jennings", Email = "tim.jennings@gmail.com", Phone = "0275 202020",

            Address = new Address { Street = "100 Burt Road", Suburb = "Howick", City = "Auckland", Country = "New Zealand" }

        };

        App.customers.Add(customer);

        customer = new Customer { FirstName = "Brian", LastName = "Jones", Email = "bjones@gmail.com", Phone = "0275 903070",

            Address = new Address { Street = "100 Vincent Road", Suburb = "St Lukes", City = "Auckland", Country = "New Zealand" }

        };

        App.customers.Add(customer);

        App.customers.Add(new Customer { FirstName = "Terry", LastName = "Teo", Email = "tete@mana.com", Phone = "021 756 382",

            Address = new Address { Street = "23 Ford St", City = "Auckland", Suburb = "Pakuranga", Country = "New Zealand" }

        });


    }



慕雪6442864
浏览 205回答 2
2回答

动漫人物

您遇到的问题是SetupCustomer,您没有清除列表,因此您的收藏中有多个条目。private void SetupCustomer(){    App.customers.Clear();    var customer = new Customer { FirstName = "Timothy", LastName = "Jennings", Email = "tim.jennings@gmail.com", Phone = "0275 202020",     Address = new Address { Street = "100 Burt Road", Suburb = "Howick", City = "Auckland", Country = "New Zealand" }        };     App.customers.Add(customer);     customer = new Customer { FirstName = "Brian", LastName = "Jones", Email = "bjones@gmail.com", Phone = "0275 903070",     Address = new Address { Street = "100 Vincent Road", Suburb = "St Lukes", City = "Auckland", Country = "New Zealand" }        };     App.customers.Add(customer);     App.customers.Add(new Customer { FirstName = "Terry", LastName = "Teo", Email = "tete@mana.com", Phone = "021 756 382",     Address = new Address { Street = "23 Ford St", City = "Auckland", Suburb = "Pakuranga", Country = "New Zealand" }     });}

慕娘9325324

在您SetupCustomer的课堂方法中,AddCustomerUI在开始时添加 App.customers.Clear();这应该有助于您的重复数据。
打开App,查看更多内容
随时随地看视频慕课网APP