Как передать данные строковой переменной из Form2 в Form1? - PullRequest
0 голосов
/ 17 ноября 2010

Это программа, которая считывает данные ученика из текстового файла и отображает их в списке (Form1).После этого вы можете добавить нового студента в текстовый файл, нажав кнопку «Добавить», которая показывает другую форму (Form2), и вы вводите данные нового студента в соответствующие текстовые поля.После этого вы можете нажать кнопку «Добавить» (Form2), но снова появится окно «Добавить учащегося (Form2)» со всеми пропущенными введенными данными, и если я снова помещу новую информацию об учащемся в текстовые поля и нажмите «Добавить»,Программа возвращается к Form1, и в окне сообщения предполагается, что сказано, что было добавлено в текстовый файл, но ничего не было добавлено, кроме пустых элементов списка.

Ответы [ 3 ]

0 голосов
/ 17 ноября 2010

Я думаю, что у вас есть задания задом наперед; Вы устанавливаете значения текстового поля для элементов строкового массива, которые являются нулевыми, потому что они никогда не были установлены. Попробуйте сначала.

Другая вещь, которую вы могли бы сделать, это поместить экземпляр массива данных в Form1 и передать его по ссылке на конструктор Form2. Таким образом, работа Form2 заключается в простом сборе данных, и на самом деле не нужно знать детали реализации Form1; все, что ему нужно, это массив строк (или, предпочтительно, класса с именованными свойствами), в котором хранятся его данные. Затем Form1 может проверить DialogResult для Form2, и если все в порядке, тогда Form1 знает, что в массиве есть данные, переданные в Form2, и может обрабатывать свои собственные функции ListView и запись в файл.

0 голосов
/ 17 ноября 2010

Создайте свойства во второй форме, а затем в первой форме проверьте свойства, чтобы получить значение.

0 голосов
/ 17 ноября 2010

Обычно Form1 создает экземпляр Form2 и показывает его. Вы можете добавить метод получения открытого свойства в Form2, который будет содержать необходимую информацию, а Form1 может получить ее из экземпляра Form2 при необходимости.

...