[英]Save C# winform controls created in run time
我創建winform,並在運行時根據傳遞給表單的一些數據創建控件。
我不知道將要創建的控件數量以及控件的類型。
傳遞給表單的數據只是文本,我要檢查創建標簽或文本框或按鈕的條件。
我要保存此控件的名稱,位置,文本。 該控件可以是文本框,按鈕,標簽,組合框。
我該怎么做? XmlSerializer在這種情況下是否有效? 如果是,如何使用?
誰能給我一些代碼或鏈接?
控件並非旨在保存。 因此您無法使用控件本身來執行此操作,但是如果您編寫的類包含控件中所需的詳細信息,則可以按需保存和使用它們。 只需將它們標記為可序列化,然后將其輸入流編寫器和讀取器( https://msdn.microsoft.com/en-gb/library/ms233843.aspx )
[Serializable]
class ControlFactory
{
enum ControlType
{
TextBox
}
ControlType Type {get;set;}
Point Position {get;set;}
//etc.
Control Create()
{
switch(Type)
{
case ControlType.TextBox:
TextBox txt = new Textbox();
// apply settings
return txt;
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.