NetAdvantage UltraWinTree 绑定(Binding)到类(class),非Datatable数据集成,C#中叫做POCO,领域对象,
UltraWinTree 层次树,表格树,Outlook展示
解决:Re: how to bind WinTree from instance Class
public class ProductBomTree:Model.ProductBom
{
//必须是第一个属性
public string Part_Name { get; set; }
public string Part_No { get; set; }
public List<ProductBomTree> Childrens { get; set; }
}
private void button4_Click(object sender, EventArgs e)
{
this.ultraTree1.Override.ShowExpansionIndicator = ShowExpansionIndicator.CheckOnDisplay;
this.ultraTree1.ViewStyle = ViewStyle.OutlookExpress;
var d = new ProductBomTree { Part_Name="备注1", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 10, Childrens = new List<ProductBomTree>(){ new ProductBomTree(){ Part_Name="OK1111", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 3 } }};
d.Childrens.Add(new ProductBomTree() {Part_Name="OK222", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 1 });
var d2 = new ProductBomTree { Part_Name = "备注2", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 10, Childrens = new List<ProductBomTree>() { new ProductBomTree() { Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 3 } } };
d2.Childrens.Add(new ProductBomTree() { Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 2 });
var d3 = new ProductBomTree { Part_Name = "备注3", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 10, Childrens = new List<ProductBomTree>() { new ProductBomTree() { Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 3 } } };
d3.Childrens.Add(new ProductBomTree() { Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 3 });
var d4 = new ProductBomTree { Part_Name = "备注4", Bom_ID = Guid.NewGuid(), Part_ID = Guid.NewGuid(), Amount = 10, Childrens = null };
var ds = new List<ProductBomTree>() { d, d2, d3,d4 };
ultraTree1.DataSource = ds;
}
运行效果: