public static void SetContextId(EbControlContainer FormObj, string contextId) { try { FormObj.ContextId = contextId; foreach (EbControl control in FormObj.Controls) { if (control is EbControlContainer) { EbControlContainer.SetContextId(control as EbControlContainer, contextId); } else { control.ContextId = contextId; } } } catch (Exception e) { if (FormObj == null) { throw new NullReferenceException(); } else { throw e; } } }
//Get all proprty value which public static string[] GetKeys(object formObj) { EbControlContainer _formObj = formObj as EbControlContainer; List <string> templist = new List <string>(); EbControl[] controls = _formObj.Controls.FlattenAllEbControls();// get all objects in the form foreach (EbControl control in controls) { PropertyInfo[] props = control.GetType().GetProperties(); foreach (PropertyInfo prop in props) { if (prop.IsDefined(typeof(PropertyEditor)) && prop.GetCustomAttribute <PropertyEditor>().PropertyEditorType == (int)PropertyEditorType.MultiLanguageKeySelector) { string val = control.GetType().GetProperty(prop.Name).GetValue(control, null) as String; if (!val.IsNullOrEmpty() && !templist.Contains(val)) { templist.Add(val); } ; } } } return(templist.ToArray()); }
private void GetCtrlNamesOfTableRec(string tableName, ref string cols) { foreach (EbControl control in Controls) { if (control is EbControlContainer) { EbControlContainer Cont = control as EbControlContainer; Cont.TableName = Cont.TableName.IsNullOrEmpty() ? TableName : Cont.TableName; if (Cont.TableName == tableName) { string _1stLvlColNames = Cont.Get1stLvlColNames(); if (!_1stLvlColNames.IsNullOrEmpty()) { cols += string.Concat(_1stLvlColNames, ", "); } } Cont.GetCtrlNamesOfTableRec(tableName, ref cols); } } }
//foreach (EbControl control in Controls) //{ // if (control is EbControlContainer) // { // EbControlContainer Cont = control as EbControlContainer; // if (Cont.TableName.IsNullOrEmpty()|| Cont.TableName.Trim() == string.Empty) // { // Cont.TableName = TableName; // } // } //} //public virtual string GetSelectQuery(string _parentTblName) //{ // string ColoumsStr = Get1stLvlColNames(); // string qry = string.Empty; // if (ColoumsStr.Length > 0) // { // if (TableName == _parentTblName) // qry = string.Format("SELECT id, {0} FROM {1} WHERE {3} = {2};", ColoumsStr, TableName, TableRowId, "id"); // else // qry = string.Format("SELECT id, {0} FROM {1} WHERE {3}={2};", ColoumsStr, TableName, TableRowId, _parentTblName + "_id"); // } // foreach (EbControl control in Controls) // { // if (control is EbControlContainer) // { // EbControlContainer _control = (control as EbControlContainer); // if (_control.TableName.IsNullOrEmpty()) // { // _control.TableName = TableName; // } // //_control.TableName = _control.TableName.IsNullOrEmpty() ? TableName : _control.TableName; // _control.TableRowId = (_control.TableRowId == 0) ? TableRowId : _control.TableRowId; // qry += _control.GetSelectQuery(_parentTblName); // } // } // return qry; //} public static string GetControlOpsJS(EbControlContainer ebControlContainer, BuilderType FormTypeEnum) { string JSCode = "var ControlOps = {}"; Type[] _typeArray = (ebControlContainer.GetType().GetTypeInfo().Assembly.GetTypes()); Dictionary <string, string> DictControlOps = new Dictionary <string, string>(); foreach (Type ctrlType in _typeArray) { try { TypeInfo _typeInfo = ctrlType.GetTypeInfo(); var _enableInBuider = _typeInfo.GetCustomAttribute <EnableInBuilder>(); string TypeName = ctrlType.Name.Substring(2, ctrlType.Name.Length - 2); if (_enableInBuider != null && _enableInBuider.BuilderTypes.Contains(FormTypeEnum)) { object ctrlObj = Activator.CreateInstance(ctrlType); if ( //(!_typeInfo.IsDefined(typeof(HideInToolBox))) && // temp ctrlObj is EbControl) { if (!DictControlOps.ContainsKey(TypeName)) { EbControl _ctrlObj = (ctrlObj as EbControl); string opFnsJs = string.Empty; opFnsJs += GetOpFnJs("getValue", _ctrlObj.GetValueJSfn, TypeName); opFnsJs += GetOpFnJs("getValueFromDOM", _ctrlObj.GetValueFromDOMJSfn, TypeName); opFnsJs += GetOpFnJs("getDisplayMember", _ctrlObj.GetDisplayMemberJSfn, TypeName); opFnsJs += GetOpFnJs("getDisplayMemberFromDOM", _ctrlObj.GetDisplayMemberFromDOMJSfn, TypeName); opFnsJs += GetOpFnJs("isRequiredOK", _ctrlObj.IsRequiredOKJSfn, TypeName); opFnsJs += GetOpFnJs("isEmpty", _ctrlObj.IsEmptyJSfn, TypeName); opFnsJs += GetOpFnJs("setValue", _ctrlObj.SetValueJSfn, TypeName); opFnsJs += GetOpFnJs("setDisplayMember", _ctrlObj.SetDisplayMemberJSfn, TypeName); opFnsJs += GetOpFnJs("justSetValue", _ctrlObj.JustSetValueJSfn, TypeName); opFnsJs += GetOpFnJs("hide", _ctrlObj.HideJSfn, TypeName); opFnsJs += GetOpFnJs("show", _ctrlObj.ShowJSfn, TypeName); opFnsJs += GetOpFnJs("enable", _ctrlObj.EnableJSfn, TypeName); opFnsJs += GetOpFnJs("disable", _ctrlObj.DisableJSfn, TypeName); opFnsJs += GetOpFnJs("reset", _ctrlObj.ResetJSfn, TypeName); opFnsJs += GetOpFnJs("refresh", _ctrlObj.RefreshJSfn, TypeName); opFnsJs += GetOpFnJs("clear", _ctrlObj.ClearJSfn, TypeName); opFnsJs += GetOpFnJs("addInvalidStyle", _ctrlObj.AddInvalidStyleJSFn, TypeName); opFnsJs += GetOpFnJs("removeInvalidStyle", _ctrlObj.RemoveInvalidStyleJSFn, TypeName); opFnsJs += GetOpFnJs("bindOnChange", _ctrlObj.OnChangeBindJSFn, TypeName); if (_ctrlObj.ObjType == "DGPowerSelectColumn") { opFnsJs += GetOpFnJs("getColumn", _ctrlObj.GetColumnJSfn, TypeName); } string fn = string.Concat("function ", TypeName, "(jsonObj){ $.extend(this, jsonObj);", opFnsJs, "}");//.RemoveCR(); JSCode += string.Concat(@" ControlOps.", TypeName, " = ", fn);; DictControlOps.Add(TypeName, "fn placeholder"); } } } } catch (Exception e) { Console.WriteLine(e.Message); } } return(JSCode); }