146 lines
4.6 KiB
C#
146 lines
4.6 KiB
C#
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());
|
|
}
|
|
}
|
|
}
|