Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > динамическое создание кнопок(не одна на другой)


Автор: nmc 13.12.2009, 21:50
Доброго времени суток!

На Window1 есть кнопка button1 (в Grid.Row="1" Grid.Column="0"), кликая по ней создаем
в другом квадрате кнопки, как сделать так что бы они были не одно на другой(визуально одна кнопка получается), а располагались по порядку? 
Код

    private void button1_Click(object sender, RoutedEventArgs e)
        {
            Button btn = new Button();
            //Grid.SetRow(btn, 0);//0 номер строки
            Grid.SetColumn(btn, 1);
            grid.Children.Add(btn);
            ?????????????????????

Автор: tol05 13.12.2009, 22:34
Я так и не понял в чем проблема? В той, другой, ячейке несколько кнопок одна над другой размещаются?

Задавайте кнопкам размеры, используйте вложенные в эту ячейку наследники панелей (StackPanel, Grid, DockPanel и т.д.) ... Aligment используйте....

Почитайте про контейнеры компоновки, одним словом.
Код

StackPanel panel = new StackPanel();
panel.Orientation = Orientation.Horizontal;

Grid.SetRow(panel, 1);
Grid.SetColumn(panel, 1);

panel.Children.Add(new Button());
panel.Children.Add(new Button());

grid.Children.Add(panel);

Автор: nmc 14.12.2009, 16:38
Спасибо smile 

Автор: WolfTheGrey 22.12.2009, 15:34
Зачем пользоваться StackPanel(), если поом ему присваивать: Orientation.Horizontal.
Когда можно сразу использовать WrapPanel ????!!!

Автор: Queuego 5.11.2022, 08:33
Модератор: Сообщение скрыто.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)