2013-11-09 2 views
2

Я работаю над проектом, в котором мне нужно сохранить динамически созданные текстовые поля (мне нужно, чтобы данные текстовых полей появлялись, когда я запускаю приложение во второй раз).Как сохранить динамически созданные текстовые поля и их значения

Это мой код:

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    static int itimes = 0; 
    static int i = 0; 
    public void textboxadd() 
    {    
     TextBox txt = new TextBox(); 
     txt.Name = "Name" + i; 

     if (i == 0) 
     { 
      Point p = new Point(6, 43); 
      txt.Location = p; 
     } 
     else 
     { 
      Point p = new Point(6, 43 + 32 * i); 
      txt.Location = p; 
     } 

     txt.Size = new System.Drawing.Size(236, 26); 

     Properties.Settings.Default.name1 = txt.Text; 
     Properties.Settings.Default.Save(); 


     groupBox1.Controls.Add(txt); 

     i++;   
    } 

    private void button1_Click(object sender, EventArgs e) 
    {    
     textboxadd(); 
     int gps = groupBox1.Size.Height; 
     if (itimes == 0) 
     { 
      itimes++; 
     } 
     else 
     { 
      groupBox1.Size = new System.Drawing.Size(248, gps + 32); 
     } 
    } 
} 

Если вы не понимаете мой вопрос, пожалуйста, спросите, и я отвечу.

Благодарим за помощь !!!!

+0

Дорогой ОП, не могли бы вы объяснить нам, чего вы хотите достичь, примеры будут оценены. –

+0

что я понял из вопроса ypour, вы создаете текстовые поля во время выполнения, и вы хотите сохранить/сохранить их для последующего использования, пожалуйста, исправьте меня, если я ошибаюсь. –

+0

Да, я хочу сохранить это текстовое поле. и когда я заполню эти текстовые поля, я хочу сохранить эти значения, нажав кнопку. – user2971569

ответ

1

Сохраните список этих динамически созданных элементов управления a, когда вы закроете приложение, чтобы сохранить их значения, которые вы хотите сохранить для дальнейшего использования в файле.

1) Создайте класс, в котором хранятся значения, которые вы хотите. Например, имя, должность, размер и текст. Отметьте этот класс и его свойства атрибутами сериализации xml.

2) Когда вы создаете текстовое поле, храните его в списке.

3) Когда вы закрываете приложение, перечислите его через коллекцию текстовых полей и создайте объект для каждого из них, где вы храните эти значения.

4) Используйте XmlSerializer для постоянного сохранения этих значений на жестком диске.

5) Когда вы запускаете приложение, проверьте, существует ли файл и когда он это делает, десериализуйте значения из него на объекты и динамически создавайте текстовые поля и устанавливайте их со значениями, которые вы сохранили ранее.

Я верю, что вы можете написать код самостоятельно. Имейте в виду эти инструкции, и вы достигнете того, чего хотите.

+0

спасибо за ответ. – user2971569

+0

Знаете ли вы неплохую учебную электронную книгу или видеокурсы C#? – user2971569

+0

Ну, это целая куча книг в магазинах и видеокурсов в Интернете. Если вы новичок, почти каждая книга о C# научит вас чему-то. Просто введите C# книгу в Google и выберите книгу на обложке. –

Смежные вопросы