Example #1
0
        /// <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);
        }
Example #2
0
        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");
            }
        }
Example #3
0
 /// <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);
 }
Example #4
0
        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);
        }