#c#
#c#
Вопрос:
Я создал текстовое поле и кнопку. При вводе значения и нажатии кнопки должно быть сгенерировано такое же количество текстовых полей, которое я ввел в поле текстового поля.
Например, если я ввел значение 5 в текстовое поле и нажал кнопку, то 5 текстовых полей должны быть сгенерированы автоматически.
Мой вопрос в том, как выровнять эти текстовые поля по вертикали?
Комментарии:
1. Я думаю, будет лучше, если вы измените заголовок на «Динамически выравнивать текстовые поля с помощью c #». Потому что вы просили об этом, а не о том, как создавать компоненты динамически.
2. Одной из возможностей было бы использовать
TableLayoutPanel
для компоновки новых элементов.3. Вы должны добавить это в качестве ответа.
4. Как можно ответить на этот вопрос, не зная технологии? WinForms, WPF и т.д.? И заголовок неправильный. Пожалуйста, отредактируйте вопрос и исправьте его.
Ответ №1:
Если у вас есть начальное значение Y и вы знаете высоту каждого динамически генерируемого текстового поля, то простая арифметика даст вам значение Y для каждого текстового поля:
int y = 24;
for(int i = 0; i < 5; i ) {
Textbox tb = generateTextbox();
tb.Top = y i * tb.Height;
addToForm(tb);
}
Должно сработать что-то вроде этого псевдокода.
Редактировать: Это для Windows Forms, которую, я предполагаю, вы используете (на момент написания этой статьи вы не сказали).
Ответ №2:
Здравствуйте, попробуйте это, это наверняка поможет вам
for (int i = 1; i <= Grab your text box value here; i )
{
TextBox tb = new TextBox();
tb.Width = width value;
tb.Height = hight value;
tb.TextMode = TextBoxMode.SingleLine;
tb.ID = "Common Name" (i).ToString();
tb.Text = Predefine Text;
tb.Visible = true;
}
Комментарии:
1. Его главный вопрос заключался в том, как выровнять текстовые поля, а не как их сгенерировать. Его название вводит в заблуждение.
2. Это просто, просто добавьте еще одну строку в цикл tb.TextAlign = Вертикальное выравнивание. Центр;
3. Я думаю — но могу ошибаться — что он спрашивает о положениях элементов управления в форме, а не о выравнивании текста.
4. Да, это правда, позвольте мне найти