#c# #windows-phone-7
#c# #windows-phone-7
Вопрос:
Я хочу добавить в пользовательский интерфейс массив кнопок, созданных в коде моих приложений. Это будет своего рода сетка кнопок. Как я могу это сделать в Windows Phone? Я пробовал разные способы, но у меня ничего не получилось. Спасибо
Комментарии:
1. одномерный или двумерный, горизонтальный или вертикальный массив кнопок?
2. двумерный массив. Я хочу расположить его как в калькуляторе
Ответ №1:
Создайте StackPanel
( Grid
или какой-либо другой тип панели, который может компоновать ваши элементы управления в соответствии с вашей спецификацией).
Создайте все свои кнопки (вы можете поместить их в a List<Button>
, чтобы отслеживать их) и добавьте каждую кнопку StackPanel.Children
.
Редактировать
Если вы помещаете свои Button
s в a Grid
и хотите поместить каждую Button
в отдельный столбец, вам необходимо установить свойство attached Grid.Column
Button b = new Button();
grid.Children.Add(b);
b.SetValue(Grid.ColumnProperty, 1); // 1 is column 1, etc.
Комментарии:
1. Я попробовал это, и я использовал сетку, но одна кнопка заняла все пространство сетки. Я хочу создать 2D-массив, к которому можно получить доступ с помощью: Array [i] [j]
2. @geeko, вам также нужно установить количество строк и столбцов сетки.
3. и это то же самое для свойства line, я полагаю, потому что я хочу 2D-массив. Если да, то было бы так: <br/> <pre><code> for (int i = 0; i <строки; i ) for (int j = 0; j < cols; j ) { b[i, j] = новая кнопка(); b[i, j].setValue(сетка. RowProperty, i); b[i, j].setValue(сетка. ColumnProperty, j); сетка. Дочерние элементы. Добавить(b[i, j]); }</code></pre> <br/> Как мне установить количество столбцов и строк