У меня проблемы с передачей списка в качестве аргумента. Я не уверен, что я делаю неправильно. Далее у меня есть список AssociatedTexts, который я добавляю в список книг с помощью функции addBook. Выбранные AssociatedTexts не сохраняются и не назначаются этому конкретному элементу списка в списке «Книги».
Book dictionary = new Book(ID, textBox1.Text, Product.AssociatedTexts);
Inventory.addBook(dictionary);
Функция addBook выглядит следующим образом:
public static void addBook(Book dictionary)
{
Books.Add(dictionary);
}
А вот конструктор для Книги:
public Book(int bookID, string name, BindingList<Book> assocText)
{
BookID = bookID;
Name = name;
AssociatedTexts = assocText;
}
Вы запросили весь класс Книги, поэтому вот оно:
public class Book
{
public static BindingList<Text> AssociatedTexts { get; set; }
public string Name { get; set; }
public int BookID { get; set; }
public int TextID { get; private set; }
public Book()
{
}
public Book(int bookID, string name)
{
BookID = productID;
Name = name;
}
public Book(int bookID, string name, BindingList<Text> assocText)
{
BookID = bookID;
Name = name;
AssociatedTexts = assocText;
}
public static void addAssociatedTexts(Text text)
{
AssociatedTexts.Add(text);
}
public static bool removeAssociatedText(int textID)
{
bool ret = false;
if (Book.AssociatedTexts.Count > textID)
{
Book.AssociatedTexts.RemoveAt(textID);
ret = true;
}
else
{
ret = false;
}
return ret;
}
public Part lookupAssociatedTexts(int searchPart)
{
for (int i = 0; i < AssociatedTexts.Count; i++)
{
if (AssociatedTexts[i].TextID == searchPart)
{
return AssociatedTexts[i];
}
}
return null;
}
Что я пытаюсь сделать, так это чтобы каждая запись в списке Книг имела свой собственный список AssociatedTexts. Я сопоставляю их с представлениями данных, и пользователь может добавлять в него свои собственные книги со своими различными ассоциированными текстами, но у меня возникают проблемы с привязкой каждого списка ассоциированных текстов к каждой книге