我有一個窗體,我有一些按鈕做東西。C#保存窗體的狀態與所有控件
當我按下按鈕,Windows窗體控件,比如文本框或組框,按鈕出現和消失,並換地方了我的形式,因爲它是一個動態的形式:)
不過,我想什麼要做的是有一個按鈕(BACK
),它將使我的表單進入按鈕操作之前的狀態,將控件放回到原來的位置和狀態。
我想到了一個C
類MyState(),將有類似Form1的數組。 我將保存在該數組中的表單狀態,當我按back
按鈕從數組中獲取表單狀態的「複製」,也可能是索引狀態的索引。
不幸的是,我不知道如何實現這一點。 :|
任何人都可以告訴我正確的方法嗎?
class Mystate
{
private Form1 [] state;
public Mystate(int n)
{
this.state = new Form1[n];
}
public Form1 this[int index]
{
get
{
return state[index];
}
set
{
this.state[index] = value;
}
}
}
您是否嘗試過在每個操作之前使用BinarySerializer序列化表單並將序列化數據放入堆棧?不確定Form和它的孩子是否都是可序列化的,但如果他們是,那肯定是一個簡單的方法。 – 2012-04-05 17:10:39
我真的不知道你到底想做什麼,但聽起來你可以使用TabControl或類似的東西。 – marinus 2012-04-05 17:13:47
[在C#中爲Windows窗體創建嚮導]的可能重複(http://stackoverflow.com/questions/2340566/creating-wizards-for-windows-forms-in-c-sharp) – 2012-04-05 17:19:37