Hello
I need bind ObservableCOllection inner collection to sfdatagrid. I've triedthe way i showed below, but it doesn't work.
MODLES
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
public decimal Amount { get; set; }
}
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public string Lastname { get; set; }
public int Age { get; set; }
}
public class PersonItems
{
public Person Person { get; set; }
public ICollection<Item> Items { get; set; }
}
VieModel
private ObservableCollection<PersonItems> _personItems;
public ObservableCollection<PersonItems> PersonItems
{
get { return _personItems; }
set {
_personItems = value;
}
}
XAML
<Syncfusion:SfDataGrid x:Name="PeopleList"
AutoGenerateColumns="true"
SelectionMode="Multiple"
Background="Bisque"
ItemsSource="{Binding PersonItems.Items}"
>
<Syncfusion:SfDataGrid.Columns>
<Syncfusion:GridTextColumn MappingName="Item.Name"/>
<Syncfusion:GridTextColumn MappingName="Item.Amount"/>
</Syncfusion:SfDataGrid.Columns>
</Syncfusion:SfDataGrid>
Thank you, thats works good for inner collection. How to combine it with master view? When i try to add a Person information the inner collection doesn't show.
I tried to modify code but it doesnt work
<syncfusion:SfDataGrid x:Name="PeopleList"
AutoGenerateColumns="False"
SelectionMode="Multiple"
SelectionUnit="Row"
ItemsSource="{Binding PersonItems}">
<syncfusion:SfDataGrid.Columns>
<syncfusion:GridTextColumn MappingName="Person.Name"/>
<syncfusion:GridTextColumn MappingName="Person.Age"/>
</syncfusion:SfDataGrid.Columns>
<syncfusion:SfDataGrid.DetailsViewDefinition>
<syncfusion:GridViewDefinition RelationalColumn="Name">
<syncfusion:GridViewDefinition.DataGrid>
<syncfusion:SfDataGrid x:Name="FirstLevelNestedGrid"
ItemsSource="{Binding PersonItems[0].Items}"
AutoGenerateColumns="False">
<syncfusion:SfDataGrid.Columns>
<syncfusion:GridTextColumn MappingName="Item.Name"/>
<syncfusion:GridTextColumn MappingName="Item.Amount"/>
</syncfusion:SfDataGrid.Columns>
</syncfusion:SfDataGrid>
</syncfusion:GridViewDefinition.DataGrid>
</syncfusion:GridViewDefinition>
</syncfusion:SfDataGrid.DetailsViewDefinition>
</syncfusion:SfDataGrid>