TheRealEddieDean
TheRealEddieDean

Reputation: 19

Create a ControlTemplate for Xamarin without using XAML

Without using XAML does anyone have an example where they create a ControlTemplate for an element?

Example:

<ControlTemplate>
      <Grid>
           <//Inner grid elements>
      </Grid>
</ControlTemplate>

      
  to C# code
      

var grid = new Grid();

//This isnt how you do it Im stuck here 

var ControlTemplate = new ControlTemplate(grid)

Upvotes: 1

Views: 166

Answers (1)

Wendy Zang - MSFT
Wendy Zang - MSFT

Reputation: 10978

You could refer to the code below.

 public class Page1 : ContentPage
{
    public Page1()
    {
        ControlTemplate controlTemplate = new ControlTemplate(typeof(Grid1));
        ControlTemplate = controlTemplate;
    }
}
public class Grid1 : ContentView
{
    public Grid1()
    {
        Grid grid = new Grid()
        {
            VerticalOptions = LayoutOptions.FillAndExpand,
            HorizontalOptions = LayoutOptions.FillAndExpand,
            RowDefinitions =
            {
                new RowDefinition{Height =GridLength.Auto},
                new RowDefinition{Height =GridLength.Auto},
            },
            ColumnDefinitions =
            {
                new ColumnDefinition{ Width= GridLength.Auto},
                new ColumnDefinition{ Width= GridLength.Auto},

            },

        };
        grid.Children.Add(new Label
        {
            Text = "column0,row0",
        }, 0, 0);

        grid.Children.Add(new Label
        {
            Text = "column1,row1"
        }, 1, 1);

        Content = grid;
    }
}

Upvotes: 0

Related Questions