大佬教程收集整理的这篇文章主要介绍了使用MircoModes实现RadGridview的绑定(silverlight),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
0.使用MiroModes框架请先阅读http://blogs.telerik.com/blogs/posts/10-01-20/micromodels_for_silverlight.aspx
1.首先定义模型
public class Division { public int id { get; set; } public String Name { get; set; } public List<Team> Teams { get; set; } }
public class Team { public int id { get; set; } public String Name { get; set; } public int Place { get; set; } }
public class Divisionsservice { public static ObservableCollection<Division> GetDivisions() { ObservableCollection<Division> divisions = new ObservableCollection<Division>(); Division dA = new Division(); dA.Name = "Division A"; dA.Id = 1; dA.Teams = new List<Team>(); Team team1 = new Team(); team1.Id = 1; team1.Name = "Team I"; team1.Place = 1; dA.Teams.Add(team1); Team team2 = new Team(); team2.Id = 2; team2.Name = "Team II"; team2.Place = 2; dA.Teams.Add(team2); Team team3 = new Team(); team3.Id = 3; team3.Name = "Team III"; team3.Place = 3; dA.Teams.Add(team3); divisions.Add(dA); Division dB = new Division(); dB.Name = "Division B"; dB.Id = 2; dB.Teams = new List<Team>(); Team teamRed = new Team(); teamRed.Id = 1; teamRed.Name = "Team Red"; teamRed.Place = 1; dB.Teams.Add(teamRed); Team teamGreen = new Team(); teamGreen.Id = 2; teamGreen.Name = "Team Green"; teamGreen.Place = 2; dB.Teams.Add(teamGreen); Team teamBlue = new Team(); teamBlue.Id = 3; teamBlue.Name = "Team Blue"; teamBlue.Place = 3; dB.Teams.Add(teamBluE); divisions.Add(dB); Division dC = new Division(); dC.Name = "Division C"; dC.Id = 3; dC.Teams = new List<Team>(); Team teamAlpha = new Team(); teamAlpha.Id = 1; teamAlpha.Name = "Team Alpha"; teamAlpha.Place = 1; dC.Teams.Add(teamAlpha); Team teamBeta = new Team(); teamBeta.Id = 2; teamBeta.Name = "Team Beta"; teamBeta.Place = 2; dC.Teams.Add(teamBeta); Team teamGama = new Team(); teamGama.Id = 3; teamGama.Name = "Team Gama"; teamGama.Place = 3; dC.Teams.Add(teamGama); divisions.Add(dC); return divisions; } }
public class viewmodel : MicroModel { public viewmodel(ObservableCollection<Division> divisions) { //AllProperties(order); Collection("LineItems",() => divisions); //.Each((item,model) => model.Property("Line@R_648_10586@l",() => item.UnitPrice * item.Quantity)); //Command("Save",() => orderservice.Save(order,lineItems)); } }
<Grid x:Name="LayoutRoot" DataContext="{Binding Object}"> <telerik:radGridView AutoGeneratecolumns="false" x:Name="HierarchicalGridView" Itemssource="{Binding Path=LineItems}"> <telerik:radGridView.ChildTableDeFinitions> <telerik:GridViewTableDeFinition> <telerik:GridViewTableDeFinition.Relation> <telerik:PropertyRelation ParentPropertyName="Teams" /> </telerik:GridViewTableDeFinition.Relation> </telerik:GridViewTableDeFinition> </telerik:radGridView.ChildTableDeFinitions> <telerik:radGridView.columns> <telerik:GridViewDatacolumn Header="Id"> <telerik:GridViewcolumn.CellTemplate> <DataTemplate> <Grid DataContext="{Binding Object}" > <Grid.columnDeFinitions> <columnDeFinition Width="80" /> </Grid.columnDeFinitions> <TextBlock Margin="1" Grid.column="0" Text="{Binding Path=ID}" /> </Grid> </DataTemplate> </telerik:GridViewcolumn.CellTemplate> </telerik:GridViewDatacolumn> <telerik:GridViewDatacolumn Header="Name"> <telerik:GridViewcolumn.CellTemplate> <DataTemplate> <Grid DataContext="{Binding Object}" > <Grid.columnDeFinitions> <columnDeFinition Width="80" /> </Grid.columnDeFinitions> <TextBlock Margin="1" Grid.column="0" Text="{Binding Path=NamE}" /> </Grid> </DataTemplate> </telerik:GridViewcolumn.CellTemplate> </telerik:GridViewDatacolumn> </telerik:radGridView.columns> </telerik:radGridView>
以上是大佬教程为你收集整理的使用MircoModes实现RadGridview的绑定(silverlight)全部内容,希望文章能够帮你解决使用MircoModes实现RadGridview的绑定(silverlight)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。