using Microsoft.SharePoint.WebControls; using System; using System.Web.UI.WebControls; namespace SPSolutions.SharePoint.WebControls { public class SPMenuSelector : Table { private Microsoft.SharePoint.WebControls.Menu m_menu; private string m_accessKey; private string m_menuText; private string m_labelText; private string m_menuTemplateId; private MenuAlignment m_menuAlignment; private Unit m_menuWidth; public new string AccessKey { get { return this.m_accessKey; } set { this.m_accessKey = value; } } public Unit MenuWidth { get { return this.m_menuWidth; } set { this.m_menuWidth = value; } } public MenuAlignment MenuAlignment { get { return this.m_menuAlignment; } set { this.m_menuAlignment = value; } } public Microsoft.SharePoint.WebControls.Menu MenuControl { get { if (this.m_menu == null) { this.EnsureChildControls(); } return this.m_menu; } set { this.m_menu = value; } } public string MenuTemplateId { get { return this.m_menuTemplateId; } set { this.m_menuTemplateId = value; } } public string MenuText { get { return this.m_menuText; } set { this.m_menuText = value; } } public string LabelText { get { return this.m_labelText; } set { this.m_labelText = value; } } protected override void OnInit(EventArgs e) { base.OnInit(e); this.BorderWidth = 0; this.CellPadding = 0; this.CellSpacing = 3; } protected override void CreateChildControls() { base.CreateChildControls(); TableCell tableCell = new TableCell(); tableCell.CssClass = "ms-listheaderlabel"; tableCell.Wrap = false; TableCell tableCell2 = new TableCell(); tableCell2.CssClass = "ms-viewselector"; tableCell2.HorizontalAlign = HorizontalAlign.Right; tableCell2.Wrap = false; tableCell2.Attributes["onmouseover"] = "this.className='ms-viewselectorhover'"; tableCell2.Attributes["onmouseout"] = "this.className='ms-viewselector'"; Unit arg_6D_0 = this.MenuWidth; tableCell2.Width = this.MenuWidth; tableCell2.Attributes["width"] = ((this.MenuWidth.Type == UnitType.Percentage) ? (this.MenuWidth.Value.ToString() + "%") : this.MenuWidth.Value.ToString()); TableRow tableRow = new TableRow(); tableRow.Cells.Add(tableCell); tableRow.Cells.Add(tableCell2); this.Rows.Add(tableRow); EncodedLiteral encodedLiteral = new EncodedLiteral(); encodedLiteral.Text = this.LabelText; encodedLiteral.EncodeMethod = (SPEncodeMethod.HtmlEncode); tableCell.Controls.Add(encodedLiteral); if (this.MenuControl == null) { this.MenuControl = new Microsoft.SharePoint.WebControls.Menu(); tableCell2.Controls.Add(this.MenuControl); } this.MenuControl.Text = (this.MenuText); this.MenuControl.TemplateId = (this.MenuTemplateId); this.MenuControl.AccessKey = this.AccessKey; this.MenuControl.MenuAlignment = (this.MenuAlignment); this.MenuControl.CssClass = "ms-viewselector"; this.MenuControl.TextCssClass = ("ms-viewselector"); this.MenuControl.HoverCellActiveCssClass = ("ms-viewselectorhover"); this.MenuControl.HoverCellInActiveCssClass = ("ms-viewselector"); this.MenuControl.MenuFormat = (MenuFormat.ArrowAlwaysVisible); this.MenuControl.ArrowImageUrl = ("/_layouts/15/images/blank.gif"); this.MenuControl.AlignmentElementOverrideClientId = (this.ClientID.ToString()); } } }