我在类ItemDatas里定义了一个结构数组m_lists;它的子是结构iItem
public struct iItem
{
public PictureBox ptBox;
public ArrayList childs;
}
public class ItemDatas
{
public ArrayList m_lists = new ArrayList();
void Init()
{
iItem nItem = new iItem();
m_lists.Append(nItem);
iItem nItem1 = new iItem();
m_lists.Append(nItem1); }
}
在窗口Form1中实例化
public partial class Form1 : Form
{
public ItemDatas classList = new ItemDatas();
Form2 f2 = new Form2();
f2.SetData(ref classList);
}
在窗口Form2中调整值:
public partial class Form2 : Form
{
private ItemDatas m_classList;
public void SetData(ref classList)
{
m_classList = classList;
}
private void Modify()
{
iItem nItem1 = m_classList.m_lists[0];
nItem1.ptBox = new PictureBox();
}
}我在Modify函数中把m_lists 里面的数据改动了,
可是只改变了窗口里面的数据。那个类里面的数据没有变的。
我尝试定义m_lists为静态变量,可是程序会报错。请问怎么解决?谢谢
public struct iItem
{
public PictureBox ptBox;
public ArrayList childs;
}
public class ItemDatas
{
public ArrayList m_lists = new ArrayList();
void Init()
{
iItem nItem = new iItem();
m_lists.Append(nItem);
iItem nItem1 = new iItem();
m_lists.Append(nItem1); }
}
在窗口Form1中实例化
public partial class Form1 : Form
{
public ItemDatas classList = new ItemDatas();
Form2 f2 = new Form2();
f2.SetData(ref classList);
}
在窗口Form2中调整值:
public partial class Form2 : Form
{
private ItemDatas m_classList;
public void SetData(ref classList)
{
m_classList = classList;
}
private void Modify()
{
iItem nItem1 = m_classList.m_lists[0];
nItem1.ptBox = new PictureBox();
}
}我在Modify函数中把m_lists 里面的数据改动了,
可是只改变了窗口里面的数据。那个类里面的数据没有变的。
我尝试定义m_lists为静态变量,可是程序会报错。请问怎么解决?谢谢
{
iItem nItem1 = m_classList.m_lists[0];
nItem1.ptBox = new PictureBox();
...........................
m_classList.m_lists[0] = nItem1 ; }