ytq2080 发表于 2016-8-11 20:55:37

XAF 如何编辑当前选择的下拉列表项属性

本帖最后由 ytq2080 于 2016-8-11 20:57 编辑

编辑当前选择的属性http://images.cnblogs.com/cnblogs_com/tonyyang/XAF/LookupPropertyEditor.jpghttp://images.cnblogs.com/cnblogs_com/tonyyang/XAF/LookupPropertyEditor2.jpgfile:///C:/Users/admin/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg实现代码如下代码 Code highlighting produced by Actipro CodeHighlighter(freeware)http://www.CodeHighlighter.com/-->// Developer Express CodeCentral Example:// How to edit the currently selected object in theWindows Forms LookupPropertyEditor// // This example illustrates the functionality describedin the K18024 KB article. A// separate v2010 vol 1 solution is also available.// // You can find sample updates and versions for differentprogramming languages here:// http://www.devexpress.com/example=E774 using System;using DevExpress.ExpressApp;using DevExpress.XtraEditors.Controls;using DevExpress.XtraEditors.Repository;using System.Drawing;using DevExpress.Utils;using DevExpress.ExpressApp.Win.Editors;using DevExpress.ExpressApp.Model; namespace WinSolution.Module.Win {    public class MyLookupPropertyEditor: LookupPropertyEditor {      publicMyLookupPropertyEditor(Type objectType, IModelMemberViewItem model) :base(objectType, model) { }      protectedoverride void SetupRepositoryItem(RepositoryItem item) {         base.SetupRepositoryItem(item);         ((RepositoryItemLookupEdit)item).Init(DisplayFormat, this.Helper);         AppearanceObject appearance = new AppearanceObject();         appearance.Font=new Font(FontFamily.GenericSansSerif, 10F,FontStyle.Underline);         ((RepositoryItemLookupEdit)item).Buttons.Add(newEditorButton(ButtonPredefines.Glyph, "Edit", -1, true, true, true,HorzAlignment.Default, null, new KeyShortcut(System.Windows.Forms.Keys.Enter),appearance, "Press this button to edit the object"));         ((RepositoryItemLookupEdit)item).ButtonClick += newButtonPressedEventHandler(MyLookupPropertyEditor_ButtonClick);      }      voidMyLookupPropertyEditor_ButtonClick(object sender, ButtonPressedEventArgs e) {            if (!e.Button.IsDefaultButton){               ObjectSpace objectSpace = Helper.Application.CreateObjectSpace();               object editedObject = null;                if(BindingHelper != null) {                   editedObject = objectSpace.GetObject(BindingHelper.GetControlValue());                }               else if (sender is LookupEdit) {                   editedObject = objectSpace.GetObject((sender as LookupEdit).EditValue);                }                if(editedObject != null) {                   ShowViewParameters svp = new ShowViewParameters();                   svp.CreatedView = Helper.Application.CreateDetailView(objectSpace,editedObject, true);                   svp.TargetWindow = TargetWindow.Default;                  svp.Context = TemplateContext.View;                   svp.CreateAllControllers = true;                   ShowViewSource svs = new ShowViewSource(Helper.Application.MainWindow,null);                   Helper.Application.ShowViewStrategy.ShowView(svp, svs);                }            }      }    }}

页: [1]
查看完整版本: XAF 如何编辑当前选择的下拉列表项属性