2015-06-05 3 views
0

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

Затем, когда форма открывается (при следующем запуске программы), она собирает все эти выделения из текстового файла и сохраняет их как переменные в форме. Эта часть работает.

Я не могу найти способ автоматического заполнения этих параметров в форме при ее открытии.

Пример:

textBox1 должен показать содержимое строки «имя пользователя» при открытии формы.

chkBox1 следует проверить или нет, в зависимости от значения «Int chkBox1».

То же самое для радиокнопки.

Я читаю файл настроек по одной строке за раз и подтвердил, что у переменной есть информация, я просто не могу ее отобразить в недавно открывшейся форме. Есть ли простой способ сделать это? Спасибо ...

+0

Вы должны показать свой код для разумного количества помощи с этим. Покажите код для вашей формы. – Derek

+0

Не можете ли вы просто установить соответствующее свойство в свойствах элемента управления во время работы в дизайнере? –

ответ

1

обычно когда он приходит для хранения пользовательской настройки стандартный способ заключается в использовании XML-файл, чтобы сохранить или загрузить настройки я сделал этот пример, сохранить компоненты пользовательского интерфейса с использованием XML надеюсь, это будет полезно интерфейс

https://www.dropbox.com/s/1j1qbe7udqxizr6/4.XMLConfigurationEditor.rar?dl=0

0

Да, есть. Вам также нужно сохранить имя файла (текстовое поле, флажок и т. Д.) В файл. Ваше сохраненное заполнение будет выглядеть примерно так: chkBox1, true chkBox2, false textBox1, "Some cool value".

Затем, когда вы читаете эти значения, вы ищете правильный контроль и установите его значение. Вы можете получить доступ к элементам управления формой, вызвав свойство Controls: например, вы можете создать Loaded event или управление доступом в конструкторе после вызова метода InitializeComponents. Доступ к управлению осуществляется следующим образом: ((CheckBox) this.Controls ["chkBox1"]). Checked = true;

Теперь просто объедините это использование управления в свой код чтения файла.

КПП. Вы также можете сохранять значения в настройках приложения. Это более простой способ хранения такого рода информации. Смотрите эту link

0

вы можете попытаться загрузить значения из файла перед инициализацией компонентов. Позже вы просто передаете значения с соответствующим им. Я также предлагаю использовать блок try/catch для предотвращения возможных ошибок во время конверсий.

Что-то вроде:

string _TextBoxData = "No data"; 
bool _ChkBox1Data = false; 
... 
try{ 
    System.IO.StreamReader file = new System.IO.StreamReader(@"c:\test.txt"); 
    _TextBoxData = file.ReadLine(); 
    _ChkBox1Data = Conver.ToBoolean(file.ReadLine()); 
}catch(Exception e){ 
    MessageBox.Show(ex.ToString()); 
} 
... 
private void Form1_Load(){ 

    TextBox1.Text = TextBoxData; 
    CheckBox1.Checked = ChkBox1Data; 

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