private void SetCellToolTip(DataControlFieldCell cell) { if (cell.ContainingField is IHasHeaderToolTip) { IHasHeaderToolTip tip = (IHasHeaderToolTip)cell.ContainingField; cell.ToolTip = tip.HeaderToolTip; } }
protected override void Render(HtmlTextWriter writer) { IHasHeaderToolTip tip = this.ContainingField as IHasHeaderToolTip; if (tip != null) { this.ToolTip = tip.HeaderToolTip; } base.Render(writer); }
/// <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(" "); // 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(" "); //++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(" 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 }