2
Answers

Runtime Generate Grid in Silverlight

Smart    Lucky

Smart Lucky

13y
3.2k
1
Hi
Can any one tell me how can i generate Grid runtime and in grid 4 rows and 4 coloms should be and in each colomn should be button how can i create this run time can any one tell me.....................?
Answers (2)
0
navjyot raut

navjyot raut

NA 85 0 13y

Attachment dynamic grid.rar



public Grid dynamicGrid = new Grid();


public Button button1 = new Button(), button2 = new Button(), button3 = new Button(), button4 = new Button();

dynamicGrid.ShowGridLines = true;

//for adding rowdefinition
dynamicGrid.RowDefinitions.Add(new RowDefinition());
dynamicGrid.RowDefinitions.Add(new RowDefinition());
dynamicGrid.RowDefinitions.Add(new RowDefinition());
dynamicGrid.RowDefinitions.Add(new RowDefinition());

//for adding columndefinition
dynamicGrid.ColumnDefinitions.Add(new ColumnDefinition());
dynamicGrid.ColumnDefinitions.Add(new ColumnDefinition());
dynamicGrid.ColumnDefinitions.Add(new ColumnDefinition());
dynamicGrid.ColumnDefinitions.Add(new ColumnDefinition());

//Adding Grid to main Grid
LayoutRoot.Children.Add(dynamicGrid);

//for setting position of Control in Grid
dynamicGrid.Children.Add(button1);
dynamicGrid.Children.Add(button2);
dynamicGrid.Children.Add(button3);
dynamicGrid.Children.Add(button4);

Grid.SetColumn(button1, 0);
Grid.SetColumn(button2, 1);
Grid.SetColumn(button3, 2);
Grid.SetColumn(button4, 3);




Plz refer attached code
0
Priya Linge

Priya Linge

NA 5k 708.3k 13y

Attachment runtimegrid.rar

Hi,

You can add grid dynamically as following way,

 panelGrid = new Grid();
            panelGrid.Name = "menuhousehold";
            panelGrid.Background = new SolidColorBrush(Colors.LightGray);

            //Add Rows dynamically in grid
            RowDefinition row1 = new RowDefinition();
            row1.Height = new GridLength(30, GridUnitType.Auto);
            panelGrid.RowDefinitions.Add(row1);

            RowDefinition row2 = new RowDefinition();
            row1.Height = new GridLength(30, GridUnitType.Auto);
            panelGrid.RowDefinitions.Add(row2);

            //Add Columns dynamically in grid
            ColumnDefinition column1 = new ColumnDefinition();
            column1.Width = new GridLength(100);
            panelGrid.ColumnDefinitions.Add(column1);

            ColumnDefinition column2 = new ColumnDefinition();
            column1.Width = new GridLength(100);
            panelGrid.ColumnDefinitions.Add(column2);

            Button btn1 = new Button();
            btn1.Content = "First Button";
            btn1.SetValue(Grid.RowProperty, 0);
            btn1.SetValue(Grid.ColumnProperty, 0);

            Button btn2 = new Button();
            btn2.MaxWidth = 100;
            btn2.HorizontalAlignment = HorizontalAlignment.Left;
            btn2.Content = "Second Button";
            btn2.SetValue(Grid.RowProperty, 0);
            btn2.SetValue(Grid.ColumnProperty, 1);

            panelGrid.Children.Add(btn1);
            panelGrid.Children.Add(btn2);

            this.LayoutRoot.Children.Add(panelGrid);

Please check attached code file.

Hope this will help you.

Thanks.