我正在开发一个简单的银行应用程序,它应该(以某种方式)显示银行的客户。我选择了一个列表框来显示项目,但如果有更简单的方法,请告诉我。
我遇到的问题是ListBox没有显示任何内容,我认为问题在于我首先没有添加我想要添加的客户。
Soo,首先,我在我的Customer类中有这个,其中设置了每个客户的属性:
public class Customer
{
string CustomerName;
long IDNumber;
List<SavingsAccount> CustomerAccounts;
public Customer()
{
}
public Customer(string _customerName, long _iDNumber, List<SavingsAccount> _customerAccounts)
{
this.customerName = _customerName;
this.iDNumber = _iDNumber;
CustomerAccounts = new List<SavingsAccount>();
}
public string customerName
{
get
{
return CustomerName;
}
set
{
CustomerName = value;
}
}
public long iDNumber
{
get
{
return IDNumber;
}
set
{
IDNumber = value;
}
}
public List<SavingsAccount> customerAccounts
{
get
{
return CustomerAccounts;
}
set
{
CustomerAccounts = value;
}
}
}
在应用程序中,用户可以导航到“添加客户页面”,他们可以在两个单独的文本框中键入名称和个人ID。一个“节省”顾客的按钮触发了这个事件:
private void addCustomer_Click(object sender, RoutedEventArgs e)
{
long pnr = Convert.ToInt64(idTextBox.Text);
bankLogic.AddCustomer(nameTextBox.Text, pnr).ToString();
AddCustomer方法如下所示:
public bool AddCustomer(string name, long idNumber)
{
foreach (Customer c in customers)
{
if (c.iDNumber != idNumber)
{
continue;
}
else
{
return false;
}
}
Customer customer = new Customer();
customer.customerName = name;
customer.iDNumber = idNumber;
customer.customerAccounts = null;
customers.Add(new Customer(customer.customerName, customer.iDNumber, customer.customerAccounts));
return true;
}
在用户可以导航到的应用程序的另一部分中,有一个ListBox和一个按钮。该按钮触发一个应该与客户一起填充ListBox的事件。在xaml.cs文件中,事件如下所示:
private void FillButton_Click(object sender, RoutedEventArgs e)
{
List<Customer> myCustomers = bankLogic.GetCustomers();
foreach (Customer c in myCustomers)
{
customerList.Items.Add(c.customerName);
}
}
bankLogic.GetCustomers();
只返回与客户的列表:
public List<Customer> customers = new List<Customer>();
public List<Customer> GetCustomers()
{
return customers;
}
所以问题是:名称和IDNumber是否已添加到列表中?或者为什么它们不会显示在ListBox中?
感谢所有答案!这是我的第一次,对于这篇长篇文章感到抱歉:)