我试图从另一个类访问我的BindingList,但我不确定该怎么做。
以下是我的Form2类的代码:
public partial class Form2 : Form
{
//List containing the memos added
public static BindingList<memo> memosList = new BindingList<memo>();
//Now the list needs to be initialized so i can use it elsewhere
public static BindingList<memo> Memos
{
get { return memosList; }
set { memosList = value; }
}
//...
这是我的Form3类的代码:
private void CreateMemo(object sender, EventArgs args)
{
memo memosList = new memo();
memosList.Add(
new memo(priorityNumber.Text, memoTitle.Text, memoDescription.Text));
}
如何访问Form2中的列表以便我可以添加/删除项目?
答案 0 :(得分:0)
BindingList<memo>
被声明为静态属性,因此您可以使用Form2.Memos
添加或删除Form3
类中的项目来访问它。
private void CreateMemo(object sender, EventArgs args)
{
Form2.Memos.Add(
new memo(priorityNumber.Text, memoTitle.Text, memoDescription.Text));
}
答案 1 :(得分:0)
因为你已经将你的memolist公开为静态,所以拥有它的属性是没有意义的。 Martijn van Put提供了一个很好的答案,但我不明白为什么有两个变量名称指向相同的内存位置。
这也和Martijn van Put
的做法相同private void CreateMemo(object sender, EventArgs args)
{
Form2.memoslist.Add(
new memo(priorityNumber.Text, memoTitle.Text, memoDescription.Text));
}
以下是使用属性的引用... https://msdn.microsoft.com/en-us/library/w86s7x04.aspx