Я хочу написать программу, которая как-то похожа на конструктор, где пользователь может добавить текстовое поле в форму, и все, что пользователь может помещать в эти текстовые поля, можно сохранить (например, настройку) и после закрытия и снова открывая форму, текст текстовых полей будет изменен без изменений., используя массив настроек в C#
, поэтому я решил создать настройку в настройках проекта->, а затем создать его в своем коде. , но всякий раз, когда я хочу, чтобы получить доступ моих настроек это дает мне исключение:
«Необработанное исключение типа„System.NullReferenceException“произошло в FormDesigner.exe»
вот мой код из определения массива:
Settings[] formsetting=new Settings[3];
и вот мой код для обработки TextChanged события для everytext поля: (я использую тег для полого ввода соответствует индексу настроек с каждым текстовым полем)
void t_TextChanged(object sender, EventArgs e)
{
TextBox temp = (TextBox)sender;
int s =(int) temp.Tag;
string str = temp.Text;
frmsetting[s].text = str;
}
Последняя строка, где я получаю сообщение об ошибке.
может кто-нибудь объяснить мне, в чем проблема и как это исправить? , и если мой путь неправильный, вы могли бы показать мой другой способ сделать это. thanks
Какая ошибка? –
вы можете отлаживать и проверять, имеет ли 'str' что-либо, а' temp.Text' возвращает допустимое значение? – SajjadHashmi
Я не вижу, где вы на самом деле заполняете массив. Вы его правильно заполняете? 'frmsetting [s]' всегда будет «null», если вы не установите его ни на что. – TyCobb