protected virtual void OnCustomParameterEditors(CustomizeParameterEditorsEventArgs args)
 {
     if (CustomParameterEditors != null)
     {
         CustomParameterEditors(this, args);
     }
 }
        private void CreateCustomParameterEditors(CustomizeParameterEditorsEventArgs e)
        {
            ITypeInfo typeInfo = XafTypesInfo.Instance.FindTypeInfo(e.Parameter.Type);

            if (typeInfo != null && typeInfo.IsDomainComponent)
            {
                ASPxPropertyEditor       editor = (ASPxPropertyEditor)Application.EditorFactory.CreateDetailViewEditor(false, GetParameterViewItem(e.Parameter.Name, e.Parameter.Type), typeof(ParametersObject), Application, objectSpace);
                ASPxLookupPropertyEditor lookupPropertyEditor = editor as ASPxLookupPropertyEditor;
                if (lookupPropertyEditor != null)
                {
                    lookupPropertyEditor.WebLookupEditorHelper.EditorMode = LookupEditorMode.AllItems;
                    lookupPropertyEditor.WebLookupEditorHelper.SmallCollectionItemCount = int.MaxValue;
                }
                editor.ViewEditMode = ViewEditMode.Edit;
                editor.CreateControl();
                editor.CurrentObject = new object();
                editor.ReadValue();
                if (lookupPropertyEditor != null)
                {
                    e.Editor = lookupPropertyEditor.DropDownEdit.DropDown;
                    new PropertyEditorDisposeManager().Attach(lookupPropertyEditor, lookupPropertyEditor.DropDownEdit.DropDown);
                    e.Editor.ID = editor.Id + "_" + e.Editor.ID;
                    lookupPropertyEditor.SetValueToControl(e.Parameter.Value);
                    e.ShouldSetParameterValue = false;
                }
                else
                {
                    e.Editor = editor.Editor as ASPxEdit;
                    new PropertyEditorDisposeManager().Attach(editor, editor.Editor);
                }
            }
        }
示例#3
0
 void model_CustomizeParameterEditors(object sender, CustomizeParameterEditorsEventArgs e)
 {
     if (e.Parameter.Name == "ConditionIndexParameter")
     {
         e.Editor = new ComboBoxEdit()
         {
             IsTextEditable = false, ItemsSource = conditions
         };
         e.BoundDataMember = "SelectedIndex";
     }
     if (e.Parameter.Name == "StyleIndexParameter")
     {
         e.Editor = new ComboBoxEdit()
         {
             IsTextEditable = false, ItemsSource = styles
         };
         e.BoundDataMember = "SelectedIndex";
     }
 }
 private void HandleCustomParameterEditorsEvent(object sender, CustomizeParameterEditorsEventArgs e)
 {
     CreateCustomParameterEditors(e);
     OnCustomParameterEditors(e);
 }
        void CustomizeParameterEditors(object sender, CustomizeParameterEditorsEventArgs e)
        {
            #region SalesDrive

            if (e.Parameter.Name == "SalesDrive")
            {
                var salesDriveCombo = new ComboBoxEdit()
                                          {
                                              DisplayMember = "Name",
                                              ItemsSource = SalesDriveSource,
                                              IsTextEditable = false
                                          };

                salesDriveCombo.SelectedIndexChanged += new RoutedEventHandler(salesDriveCombo_SelectedIndexChanged);

                e.Editor = salesDriveCombo;
                e.BoundDataMember = "EditValue";
                e.BoundDataConverter = new SingleSelectedConverter<SalesDrive>();
                e.BoundDataConverterParameter = SalesDrives;
            }



            #endregion

            #region Animations

            if (e.Parameter.Name == "Animations")
            {
                var animationCombo = new ComboBoxEdit()
                {
                    ItemsSource = AnimationSource,
                    DisplayMember = "Name",
                    IsTextEditable = false,
                    SeparatorString = ",",
                    StyleSettings = new CheckedComboBoxStyleSettings()
                };
                e.Editor = animationCombo;
                animationEditor = (ComboBoxEdit)animationCombo;
                animationCombo.SelectedIndexChanged += new RoutedEventHandler(animationCombo_SelectedIndexChanged);
                e.BoundDataMember = "EditValue";
                e.BoundDataConverter = new MultiSelectedConverter<Animation>();
                e.BoundDataConverterParameter = Animations;
            }

            #endregion

            #region SalesArea

            if (e.Parameter.Name == "SalesArea")
            {
                var combo = new ComboBoxEdit()
                {
                    DisplayMember = "Name",
                    ItemsSource = SalesAreaSource,
                    IsTextEditable = false
                };

                combo.Validate += new DevExpress.Xpf.Editors.Validation.ValidateEventHandler(combo_Validate);
                e.Editor = combo;
                salesAreaEditor = (ComboBoxEdit)combo;
                salesAreaEditor.SelectedIndexChanged += new RoutedEventHandler(salesAreaEditor_SelectedIndexChanged);
                e.BoundDataMember = "EditValue";
                e.BoundDataConverter = new SingleSelectedConverter<SalesArea>();
                e.BoundDataConverterParameter = SalesAreas;
            }
            #endregion

            #region ItemGroups

            if (e.Parameter.Name == "ItemGroups")
            {
                var itemGroupCombo = new ComboBoxEdit()
                {
                    DisplayMember = "Name",
                    ItemsSource = ItemGroupSource,
                    IsTextEditable = false,
                    SeparatorString = ",",
                    StyleSettings = new CheckedComboBoxStyleSettings()
                };
                itemGroupCombo.Validate += new DevExpress.Xpf.Editors.Validation.ValidateEventHandler(itemGroupCombo_Validate);
                e.Editor = itemGroupCombo;
                itemGroupCombo.SelectedIndexChanged += new RoutedEventHandler(itemGroupCombo_SelectedIndexChanged);
                itemGroupEditor = itemGroupCombo;
                e.BoundDataMember = "EditValue";
                e.BoundDataConverter = new MultiSelectedConverter<ItemGroup>();
                e.BoundDataConverterParameter = ItemGroups;
            }

            #endregion
        }