110,561
社区成员
发帖
与我相关
我的任务
分享
public class sort
{
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<sort> sorts { get; set; }
}
public class myDb : DbContext
{
public DbSet<sort> sorts { get; set; }
}
using (var context = new myDb())
{
var r1 = new sort {Name = "Lei1"};
var r3 = new sort {Name = "Lei3"};
var r5 = new sort {Name = "Lei5"};
var r4 = new sort {Name = "Lei4"};
r4.sorts = new Collection<sort>() {r1};
r1.sorts = new Collection<sort>() {r3};
r5.sorts = new Collection<sort>() {r4};
context.Entry(r5).State = EntityState.Added;
context.SaveChanges();
}
ID Name sort_ID
1 Lei5 NULL
2 Lei4 1
3 Lei1 2
4 Lei3 3
<Window.Resources>
<ResourceDictionary>
<HierarchicalDataTemplate x:Key="CheckBoxItemTemplate" DataType="{x:Type dal:sort}" ItemsSource="{Binding sorts}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Name}"/>
</StackPanel>
</HierarchicalDataTemplate>
</ResourceDictionary>
</Window.Resources>
<Grid>
<TreeView Name="TreeView1" ItemsSource="{Binding}" ItemTemplate="{StaticResource CheckBoxItemTemplate}">
</TreeView>
</Grid>
var r6 = context.sorts.FirstOrDefault(x => x.Name == "Lei5");
TreeView1.ItemsSource = new Collection<sort>() { r6 };
这个r6的结构有嵌套.和网上其他绑定实例结构差不多.