public List<FBDataGrid.FBGridItem> GetItems() { string xmlDoc = @"<?xml version=""1.0"" encoding=""utf-8"" ?><GridItems> <GridItem PropertyDisplayName="""" PropertyName=""Actived"" Width=""50"" CType=""6"" /> <GridItem PropertyDisplayName=""科目编码"" PropertyName=""Entity.T_FB_SUBJECT.SUBJECTCODE"" Width=""75"" IsReadOnly=""true"" /> <GridItem PropertyDisplayName=""预算项目"" PropertyName=""Entity.T_FB_SUBJECT.SUBJECTNAME"" Width=""150"" IsReadOnly=""true""/> <GridItem PropertyDisplayName=""可用结余"" PropertyName=""Entity.USABLEMONEY"" Width=""75"" IsReadOnly=""true"" /> </GridItems>"; XElement xml = XElement.Parse(xmlDoc); XElement xElement = xml; List<FBDataGrid.FBGridItem> list = new List<FBDataGrid.FBGridItem>(); foreach (XElement xeItem in xElement.Elements("GridItem")) { FBDataGrid.FBGridItem gridItem = new FBDataGrid.FBGridItem(); Type type = typeof(FBDataGrid.FBGridItem); xeItem.Attributes().ForEach(item => { PropertyInfo p = type.GetProperty(item.Name.LocalName); if (p != null) { object v = item.Value.ConvertOrNull(p.PropertyType, null, null, DateTimeStyles.None, null); p.SetValue(gridItem, v, null); } }); list.Add(gridItem); } return list; }
public List<FBDataGrid.FBGridItem> GetBorrowItems() { string xmlDoc = @"<?xml version=""1.0"" encoding=""utf-8"" ?><GridItems> <GridItem PropertyDisplayName=""借款项目"" PropertyName=""REPAYTYPE"" Width=""100"" IsReadOnly=""true"" ReferenceType=""RepayType""/> <GridItem PropertyDisplayName=""借款余额"" PropertyName=""BORROWMONEY"" Width=""75"" IsReadOnly=""true"" /> <GridItem PropertyDisplayName=""摘要"" PropertyName=""REMARK"" Width=""200"" IsReadOnly=""flase""/> <GridItem PropertyDisplayName=""还款金额"" PropertyName=""REPAYMONEY"" Width=""75"" IsReadOnly=""flase""/> </GridItems>"; XElement xml = XElement.Parse(xmlDoc); XElement xElement = xml; List<FBDataGrid.FBGridItem> list = new List<FBDataGrid.FBGridItem>(); foreach (XElement xeItem in xElement.Elements("GridItem")) { FBDataGrid.FBGridItem gridItem = new FBDataGrid.FBGridItem(); Type type = typeof(FBDataGrid.FBGridItem); xeItem.Attributes().ForEach(item => { PropertyInfo p = type.GetProperty(item.Name.LocalName); if (p != null) { object v = item.Value.ConvertOrNull(p.PropertyType, null, null, DateTimeStyles.None, null); p.SetValue(gridItem, v, null); } }); list.Add(gridItem); } return list; }