这个问题看似微不足道,但由于我是个假人,我仍然遇到问题。 因此,我正在使用Windows窗体创建一个Book Store应用。
我为Book创建了一个单独的类。我要对这个Book类进行以下操作:创建Book对象,将它们添加到List中;然后,我将需要通过事件处理程序方法访问此列表的Book对象。即使将Book对象添加到列表中,我似乎仍然遇到问题。您能给我指导如何组织这种代码的方法吗?
这是两个代码:
form1.cs:
using System.Collections.Generic;
using System.Windows.Forms;
namespace BookStore
{
public partial class BookStoreForm : Form
{
List<Book> Books = new List<Book>();
Book Book1 = new Book("Author", "ISBN", 5, "Title");
// Books.Add(Book1);
public BookStoreForm()
{
InitializeComponent();
}
}
}
book.cs:
namespace BookStore
{
public class Book
{
public string Author { get; set; }
public string ISBN { get; set; }
public decimal Price { get; set; }
public string Title { get; set; }
public Book() { }
public Book(string Author, string ISBN, decimal Price, string Title)
{
this.Author = Author;
this.ISBN = ISBN;
this.Price = Price;
this.Title = Title;
}
}
}
答案 0 :(得分:1)
您不能在函数外部(除了声明属性外)编写代码
移动代码给构造函数,它将起作用(或您选择的其他功能)
喜欢
private List<Book> Books; // this will be accessible from anywhere in you form
public BookStoreForm()
{
InitializeComponent();
Books = new List<Book>();
Book Book1 = new Book("Author", "ISBN", 5, "Title");
Books.Add(Book1);
}
private void myEvnetHandler(object sender, EventArgs e)
{
Books.Add(new Book("Stephen R. Davis", "0764508148", 12.45m, "C# For Dummies"));
}
答案 1 :(得分:0)
您需要输入
Books.Add(Book1);
使用不在类中的方法。