public static MvcHtmlString GridButtonActionWindow(this HtmlHelper helper, string name, string headerText, int widthInPx = 300, int heightInPx = 200)
        {
            var wp  = new WindowParameters(name, headerText, "", "", widthInPx, heightInPx, "");
            var wdw = WindowBuilderHelper.CreateWindow(helper, wp);

            return(new MvcHtmlString(wdw.ToHtmlString()));
        }
        public static WindowBuilder CreateWindow(HtmlHelper helper, WindowParameters parameters)
        {
            var hlpr    = helper.Telerik();
            var winName = parameters.Name.ToUpper().EndsWith("WINDOW") ? parameters.Name : parameters.Name + "Window";
            var wdw     = hlpr.Window().Name(winName).Title(parameters.HeaderText);

            if (!String.IsNullOrEmpty(parameters.Controller))
            {
                wdw.HtmlAttributes(new Dictionary <string, object>()
                {
                    { "data-action", UrlHelper.GenerateContentUrl("~/" + parameters.Controller + "/" + parameters.Action, helper.ViewContext.HttpContext) },
                    { "data-values", HtmlHelperExtensions.SerializeToQueryString(parameters.RouteValues) }
                });
            }
            //.LoadContentFrom(parameters.Action,parameters.Controller,parameters.RouteValues)
            var loadXpos = (parameters.WidthInPx / 2) - 16;
            var loadYpos = (parameters.HeightInPx / 2) - 16;

            wdw.Content("<div class='window-loading t-loading' style='position:relative;top:" + loadYpos + "px;left:" + loadXpos + "px;width:16px;height:16px;'> </div><div class='window-contents' style='overflow:auto;'></div>")
            .Width(parameters.WidthInPx).Height(parameters.HeightInPx)
            .Resizable().Modal(true).Visible(false).Draggable(true);
            return(wdw);
        }