Esempio n. 1
0
 private void SetCellToolTip(DataControlFieldCell cell)
 {
     if (cell.ContainingField is IHasHeaderToolTip)
     {
         IHasHeaderToolTip tip = (IHasHeaderToolTip)cell.ContainingField;
         cell.ToolTip = tip.HeaderToolTip;
     }
 }
Esempio n. 2
0
        protected override void Render(HtmlTextWriter writer)
        {
            IHasHeaderToolTip tip = this.ContainingField as IHasHeaderToolTip;

            if (tip != null)
            {
                this.ToolTip = tip.HeaderToolTip;
            }
            base.Render(writer);
        }
Esempio n. 3
0
        /// <summary>
        /// Finds grid view of the page in which our control was placed by using property GridViewExId
        /// Renders the markup for the SortColumnChooser control and then applies sorting in the contol
        /// based on the DefaultSortExpression of the grid. Apllies direction based on grid view property
        /// DefaultSortDirection.
        /// </summary>
        /// <param name="writer"></param>
        protected override void RenderContents(HtmlTextWriter writer)
        {
            base.RenderContents(writer);

            writer.AddStyleAttribute("float", "left");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget");
            writer.RenderBeginTag(HtmlTextWriterTag.Div);
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget-header");
            writer.RenderBeginTag(HtmlTextWriterTag.Div);
            writer.Write("Available Columns");
            writer.RenderEndTag();      //div
            writer.AddAttribute(HtmlTextWriterAttribute.Id, this.ClientID + "_1");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget-content");
            writer.RenderBeginTag(HtmlTextWriterTag.Ul);
            if (this.EnableGroupBy && _gv.SortExpressions.CountMasterExpressions == 0)
            {
                // If sort columns already contain group by marker, do not add it here
                RenderGroupByMarker(writer);
            }

            foreach (DataControlField col in
                     _gv.Columns.Cast <DataControlField>().Where(p => !string.IsNullOrEmpty(p.SortExpression)))
            {
                // Only those columns which are sortable, and not part of default expression
                SortExpression colSortExpr = new SortExpression(col.SortExpression);
                if (!_gv.SortExpressions.Contains(colSortExpr))
                {
                    writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-state-default");
                    //string sortExprFixed = SortFormatProvider.FixSortExpressions(col.SortExpression);
                    writer.AddAttribute("sortexpr", colSortExpr.ToString());
                    IHasHeaderToolTip tip = col as IHasHeaderToolTip;
                    if (tip != null && !string.IsNullOrEmpty(tip.HeaderToolTip))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, tip.HeaderToolTip);
                    }
                    writer.RenderBeginTag(HtmlTextWriterTag.Li);
                    writer.Write(col.HeaderText.Replace("|", " - "));
                    writer.Write("&nbsp;&nbsp;");
                    // Hidden Icon
                    RenderSortIcon(writer, colSortExpr, null);
                    writer.RenderEndTag();      //li
                }
            }
            writer.RenderEndTag();      //ul
            writer.RenderEndTag();      //div

            writer.AddStyleAttribute("float", "right");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget");
            writer.RenderBeginTag(HtmlTextWriterTag.Div);
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget-header");
            writer.RenderBeginTag(HtmlTextWriterTag.Div);
            writer.Write("Sort Columns");
            writer.RenderEndTag();      //div
            writer.AddAttribute(HtmlTextWriterAttribute.Id, this.ClientID + "_2");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-widget-content");
            writer.RenderBeginTag(HtmlTextWriterTag.Ul);

            //int sequence = 0;
            for (int i = 0; i < _gv.SortExpressions.Count; ++i)
            {
                // Only those columns which are part of default expression
                if (i > 0 && i == _gv.SortExpressions.CountMasterExpressions)
                {
                    RenderGroupByMarker(writer);
                }
                DataControlField dcf = _gv.Columns.Cast <DataControlField>().FirstOrDefault(
                    p => _gv.SortExpressions[i].Equals(p.SortExpression));

                if (dcf != null)
                {
                    IHasHeaderToolTip tip = dcf as IHasHeaderToolTip;
                    if (tip != null && !string.IsNullOrEmpty(tip.HeaderToolTip))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, tip.HeaderToolTip);
                    }
                    writer.AddAttribute(HtmlTextWriterAttribute.Class, "ui-state-default ui-priority-primary");
                    //string sortExprFixed = SortFormatProvider.FixSortExpressions(sortExpr);
                    writer.AddAttribute("sortexpr", _gv.SortExpressions[i].ToString());
                    writer.RenderBeginTag(HtmlTextWriterTag.Li);
                    writer.Write(dcf.HeaderText.Replace("|", " - "));
                    writer.Write("&nbsp;&nbsp;");
                    //++sequence;
                    RenderSortIcon(writer, _gv.SortExpressions[i], i + 1);
                    writer.RenderEndTag();      //li
                }
            }
            if (_gv.SortExpressions.Count == _gv.SortExpressions.CountMasterExpressions)
            {
                // The group by marker is at the very end. Render it now
                RenderGroupByMarker(writer);
            }
            writer.RenderEndTag();      //ul
            writer.RenderBeginTag(HtmlTextWriterTag.P);
            writer.AddAttribute(HtmlTextWriterAttribute.Name, this.UniqueID);
            writer.AddAttribute(HtmlTextWriterAttribute.Type, "checkbox");
            writer.AddAttribute(HtmlTextWriterAttribute.Value, _gv.SortExpressions.ToString());
            writer.RenderBeginTag(HtmlTextWriterTag.Input);
            writer.RenderEndTag();
            writer.Write("&nbsp;Use these sort columns");
            writer.RenderEndTag(); //p
            writer.RenderEndTag(); //div

            // Instructions
            writer.RenderBeginTag(HtmlTextWriterTag.P);
            writer.Write("Use drag and drop to add, remove or rearrange sort columns. Click on the sort icon to toggle sort direction. A mouse is required.");
            writer.RenderEndTag(); //p

            //_btnIcon.CustomIconName = "ui-icon-transferthick-e-w";
            //_btnIcon.RenderControl(writer);
            ButtonEx.RenderIcon(writer, "ui-icon-transferthick-e-w");

            writer.RenderBeginTag(HtmlTextWriterTag.P);
            writer.Write("Removing all sort columns will revert to default sorting.");
            writer.RenderEndTag(); //p

            // div which clears floats
            writer.AddStyleAttribute("clear", "both");
            writer.RenderBeginTag(HtmlTextWriterTag.Div);
            writer.RenderEndTag();
            //writer.RenderEndTag();      //div
        }