We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.

GridTemplateColumn not working using Code

Thread ID:

Created:

Updated:

Platform:

Replies:

128452 Jan 23,2017 06:42 PM Feb 4,2017 01:54 AM Xamarin.Forms 3
loading
Tags: SfDataGrid
Vivek Agrawal
Asked On January 23, 2017 06:42 PM

Hi Guys,

GridTemplateColumn not working using Code, but works if I use XAML.
I get lot of missing rows for some reason. Below is my code. my model is same as the sample you guys provide online.
Thanks for the Help!!

var
 grid = new SfDataGrid();
            var data = new OrderInfoRepository();
            grid.AutoGenerateColumns = false;
            var label1 = new Label()
            {
                TextColor = Color.Black,
                HorizontalOptions = LayoutOptions.Center,
                VerticalOptions = LayoutOptions.Center
            };
            var label2 = new Label(){
                TextColor = Color.Black,
                HorizontalOptions = LayoutOptions.Center,
                VerticalOptions = LayoutOptions.Center
            };

            var cellGrid = new Grid(){
                ColumnDefinitions = {
                    new ColumnDefinition{Width = GridLength.Auto},
                    new ColumnDefinition{Width = GridLength.Auto}
                }
            };
            cellGrid.Children.Add(label1,0,0);
            cellGrid.Children.Add(label2, 1, 0);
            label1.SetBinding(Label.TextProperty, "CustomerID");
            label2.SetBinding(Label.TextProperty, "ShipCountry");

            var template = new GridTemplateColumn(){HeaderText = "Custom", MappingName = "OrderID" , Width = 250};
            var dataTemplate = new DataTemplate(() =>
            {
                return cellGrid;
            });
            template.CellTemplate = dataTemplate;
            grid.Columns.Add(template);
            grid.ColumnSizer = ColumnSizer.Auto;
            grid.ItemsSource = data.OrderInfoCollection;
            Content = grid;

Attachment: TestSyncFusion_9a21f5af.zip

Divakar Subramaniam [Syncfusion]
Replied On January 24, 2017 05:10 AM

Hi Vivek, 
 
Thanks for contacting Syncfusion Support. 
 
We have checked your query. We have resolved the query in sample level by creating new label inside a DataTemplate instead of creating outside of DataTemplate. Please refer the below code snippet. 
var dataTemplate = new DataTemplate(() => 
{ 
    var label1 = new Label() 
    { 
        TextColor = Color.Black, 
        HorizontalOptions = LayoutOptions.Center, 
        VerticalOptions = LayoutOptions.Center 
    }; 
    label1.SetBinding(Label.TextProperty, "OrderID"); 
    return label1; 
}); 
 
We have attached the modified sample for your reference and you can download the same from the below link. 
 
Regards, 
Divakar.  


K Guptha
Replied On February 3, 2017 07:53 PM

Hi, in this example xaml code GridTemplareColumn is not working for me, it showing only OrderID, not displaying other binding values.

Attachment: TestSyncFusion954146049_426fecc.zip

Divakar Subramaniam [Syncfusion]
Replied On February 4, 2017 01:54 AM

Hi Kumar, 
 
 
Thanks for the update. 
 
 
In the previous sample, we have added only one label and bound OrderID property to that label. That’s why only the OrderID values were displayed in SfDataGrid. Now, we have modified the sample based on your requirement and you can download the sample from the below link. 
 
 
 
Regards, 
Divakar.   
 


CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.

;