Я создал приложение формы окна С#, которое принимает ввод через текстовые поля и записывает их в текстовый файл при нажатии соответствующей кнопки. Я обнаружил, что сохранение четкого макета в результирующем текстовом файле было проблемой на всем протяжении разработки, и, где это возможно, пытался сохранить данные из текстового поля вместе с меткой, которая находится рядом с текстовым полем на консоли. Я решил попробовать свести информацию в таблицу и прочитать о методе String.Format(), который выделяет пространство внутри строки {0, -10}, а затем позволяет перечислить переменную или textbox.Text, который должен занять это место.
Теоретически это работает, но я обнаружил, что когда пробовал, метод, кажется, принимает только первый ввод и повторяет его во всех доступных местах...
consoleFile.WriteLine("--------------------------------------------------------");
consoleFile.WriteLine("Patient Name | Owner Name | Surgeon | Anaethetist | Date");
consoleFile.WriteLine(String.Format("{0, -20} | {0, -20} | {0, -20} | {0, -20} | {0, -20}",
txtPatName.Text, txtOwnerName.Text, txtSurgName.Text, txtAnthtstName.Text, txtDate.Text));
consoleFile.WriteLine("--------------------------------------------------------");
consoleFile.WriteLine("\n\n");
В этом примере я бы подумал, что каждый слот {0, -20} будет принимать значение из соответствующего текстового поля в списке на следующей строке кода. Однако каждый слот выводит текст из первого аргумента «txtPatName.Text», что означает, что одна и та же строка записывается пять раз. Итак, как мне заставить метод распознавать другие входные данные?
Если я сделал очевидную ошибку, пожалуйста, наберитесь терпения, так как я новичок в методе String.Format() на сегодняшний день, любая помощь очень ценится!
Отметка
String.Format("{0, -20} | {0, -20} | {0, -20} | {0, -20} | {0, -20}",
- person EZI   schedule 24.06.2015