好久没有更新Blog了,工作调换了,很少用XAF,但还是很关注XAF的发展和学习,对中国的中小企业数据管理软件开发真的太实用了!!
功能比较简单,但很实用,直接上图和代码!
ListView處於ListViewAndDetailView編輯模式
using System;using System.Linq;using System.Text;using DevExpress.ExpressApp;using DevExpress.Data.Filtering;using System.Collections.Generic;using DevExpress.Persistent.Base;using DevExpress.ExpressApp.Utils;using DevExpress.ExpressApp.Layout;using DevExpress.ExpressApp.Actions;using DevExpress.ExpressApp.Editors;using DevExpress.ExpressApp.Templates;using DevExpress.Persistent.Validation;using DevExpress.ExpressApp.SystemModule;using DevExpress.ExpressApp.Model.NodeGenerators;using DevExpress.Xpo;using DevExpress.XtraEditors;using DevExpress.ExpressApp.Win.Templates;namespace SimpleProjectManager.Module.Controllers{// For more typical usage scenarios, be sure to check out /#Xaf/clsDevExpressExpressAppViewControllertopic.public partial class EditerPlusieursLignesListViewController : ViewController<ListView>{public EditerPlusieursLignesListViewController(){InitializeComponent();RegisterActions(components);// Target required Views (via the TargetXXX properties) and create their Actions. }protected override void OnActivated(){base.OnActivated();if (View == null)return;if(((ListView)View).EditView == null)return;if( ((ListView)View).EditView.Items==null)return;foreach (ViewItem item in ((ListView)View).EditView.Items){item.ControlCreated += item_ControlCreated;}}void item_ControlCreated(object sender, EventArgs e){ViewItem item = (ViewItem)sender;if (item.Control.GetType() == typeof(NestedFrameTemplate)) return;((BaseEdit)item.Control).EditValueChanged += (sender2, e2) =>{if (View != null && View.SelectedObjects.Count > 1){foreach (XPBaseObject xpo in View.SelectedObjects){xpo.SetMemberValue(item.Id, ((BaseEdit)sender2).EditValue);}}};} }}