/// <summary> /// Construtor padrão. /// </summary> /// <param name="dataSource">Instancia do DataSource que será configurado.</param> public DataSourceBehavior(Colosoft.WebControls.VirtualObjectDataSource dataSource, System.Web.UI.WebControls.GridView gridViewComFooter) { _dataSource = dataSource; _gridView = gridViewComFooter; if (_gridView != null) { dataSource.Selected += dataSource_Selected; } dataSource.Inserted += new Colosoft.WebControls.VirtualObjectDataSourceStatusEventHandler(dataSource_Inserted); dataSource.Updated += new Colosoft.WebControls.VirtualObjectDataSourceStatusEventHandler(dataSource_Updated); dataSource.Deleted += new Colosoft.WebControls.VirtualObjectDataSourceStatusEventHandler(dataSource_Deleted); }
private static string GetParameterValue(Colosoft.WebControls.VirtualObjectDataSource ds, Parameter p, bool liveValue) { Control c = p is ControlParameter?GetControl(ds, ((ControlParameter)p).ControlID) : null; if (c == null || !liveValue) { MethodInfo eval = typeof(Parameter).GetMethod("Evaluate", BindingFlags.NonPublic | BindingFlags.Instance); object retorno = eval.Invoke(p, new object[] { HttpContext.Current, c }); if (retorno == null || retorno == DBNull.Value) { retorno = p.DefaultValue; } return(retorno != null?retorno.ToString() : null); } else { return("document.getElementById(\"" + c.ClientID + "\").value"); } }
/// <summary> /// Registra o comportamento para o DataSource. /// </summary> /// <param name="dataSource"></param> public static void Register(this Colosoft.WebControls.VirtualObjectDataSource dataSource, System.Web.UI.WebControls.GridView gridViewComFooter = null) { new Web.Process.Behaviors.DataSourceBehavior(dataSource, gridViewComFooter); }
public Colosoft.WebControls.VirtualObjectDataSource GetForConfig(uint idConfig, params object[] parametros) { Config.TipoConfigEnum tipo = ConfiguracaoDAO.Instance.ObtemValorCampo <Config.TipoConfigEnum>("tipo", "idConfig=" + idConfig); string nomeTipoEnum = ConfiguracaoDAO.Instance.ObtemValorCampo <string>("nomeTipoEnum", "idConfig=" + idConfig); string nomeTipoMetodo = ConfiguracaoDAO.Instance.ObtemValorCampo <string>("nomeTipoMetodo", "idConfig=" + idConfig); tipo = tipo == Config.TipoConfigEnum.GrupoEnumMetodo && !String.IsNullOrEmpty(nomeTipoEnum) ? Config.TipoConfigEnum.Enum : tipo == Config.TipoConfigEnum.GrupoEnumMetodo && !String.IsNullOrEmpty(nomeTipoMetodo) ? Config.TipoConfigEnum.ListaMetodo : tipo; string nome = tipo == Config.TipoConfigEnum.Enum ? nomeTipoEnum : nomeTipoMetodo; var odsRetorno = new Colosoft.WebControls.VirtualObjectDataSource(); if (tipo == Config.TipoConfigEnum.Enum) { odsRetorno.TypeName = "Glass.Data.Helper.ConfigDAO"; odsRetorno.SelectMethod = "GetListForConfig"; odsRetorno.SelectParameters.Add(new System.Web.UI.WebControls.Parameter() { Name = "type", DefaultValue = nome, Type = TypeCode.String }); odsRetorno.SelectParameters.Add(new System.Web.UI.WebControls.Parameter() { Name = "tipoConfig", DefaultValue = ((int)tipo).ToString(), Type = TypeCode.Int32 }); if (parametros == null || parametros.Length == 0 || !typeof(System.Web.UI.WebControls.Parameter).IsAssignableFrom(parametros[0].GetType())) { odsRetorno.SelectParameters.Add(new System.Web.UI.WebControls.Parameter() { Name = "parametros", Type = TypeCode.Object }); odsRetorno.Selecting += delegate(object sender, Colosoft.WebControls.VirtualObjectDataSourceSelectingEventArgs e) { e.InputParameters["parametros"] = parametros != null ? parametros : new object[0];; }; } else if (parametros.Length > 0) { foreach (System.Web.UI.WebControls.Parameter p in parametros) { odsRetorno.SelectParameters.Add(p); } } } else { odsRetorno.TypeName = nome.Split(',')[0].Trim(); odsRetorno.SelectMethod = nome.Split(',')[1].Trim(); if (parametros != null && parametros.Length > 0 && typeof(System.Web.UI.WebControls.Parameter).IsAssignableFrom(parametros[0].GetType())) { foreach (System.Web.UI.WebControls.Parameter p in parametros) { odsRetorno.SelectParameters.Add(p); } } } return(odsRetorno); }