//XpoMode public TreeViewArticleSubFamily(Window pSourceWindow, XPGuidObject pDefaultValue, CriteriaOperator pXpoCriteria, Type pDialogType, GenericTreeViewMode pGenericTreeViewMode = GenericTreeViewMode.Default, GenericTreeViewNavigatorMode pGenericTreeViewNavigatorMode = GenericTreeViewNavigatorMode.Default) { //Init Vars Type xpoGuidObjectType = typeof(FIN_ArticleSubFamily); //Override Default Value with Parameter Default Value, this way we can have diferent Default Values for GenericTreeView FIN_ArticleSubFamily defaultValue = (pDefaultValue != null) ? pDefaultValue as FIN_ArticleSubFamily : null; //Override Default DialogType with Parameter Dialog Type, this way we can have diferent DialogTypes for GenericTreeView Type typeDialogClass = (pDialogType != null) ? pDialogType : typeof(DialogArticleSubFamily); //Configure columnProperties List <GenericTreeViewColumnProperty> columnProperties = new List <GenericTreeViewColumnProperty>(); columnProperties.Add(new GenericTreeViewColumnProperty("Code") { Title = Resx.global_record_code, MinWidth = 100 }); columnProperties.Add(new GenericTreeViewColumnProperty("Designation") { Title = Resx.global_designation, Expand = true }); columnProperties.Add(new GenericTreeViewColumnProperty("Family") { Title = Resx.global_article_family, ChildName = "Designation" }); columnProperties.Add(new GenericTreeViewColumnProperty("Printer") { Title = Resx.global_device_printer, ChildName = "Designation" }); columnProperties.Add(new GenericTreeViewColumnProperty("UpdatedAt") { Title = Resx.global_record_date_updated, MinWidth = 150, MaxWidth = 150 }); //Configure Criteria/XPCollection/Model //CriteriaOperator.Parse("Code >= 100 and Code <= 9999"); CriteriaOperator criteria = pXpoCriteria; XPCollection xpoCollection = new XPCollection(GlobalFramework.SessionXpo, xpoGuidObjectType, criteria); //Call Base Initializer base.InitObject( pSourceWindow, //Pass parameter defaultValue, //Pass parameter pGenericTreeViewMode, //Pass parameter pGenericTreeViewNavigatorMode, //Pass parameter columnProperties, //Created Here xpoCollection, //Created Here typeDialogClass //Created Here ); }
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: private void DefineInitialValueForXpoComboBoxFamily() { FIN_ArticleFamily xpoArticleFamily = ((FIN_ArticleFamily)_xpoComboBoxFamily.Value); FIN_ArticleSubFamily xpoArticleSubFamily = ((FIN_Article)DataSourceRow).SubFamily; Guid currentOid = Guid.Empty; if (xpoArticleFamily != null) { currentOid = ((FIN_ArticleFamily)_xpoComboBoxFamily.Value).Oid; } CriteriaOperator criteria = CriteriaOperator.Parse(string.Format("Family = '{0}'", currentOid)); _xpoComboBoxSubFamily.UpdateModel(criteria, xpoArticleSubFamily); }