Пример #1
0
    private Control GetHyperLink(PivotGridFieldValueTemplateContainer c)
    {
        HyperLink link = new HyperLink();

        link.Text                  = (string)c.Text;
        link.NavigateUrl           = "#";
        link.Attributes["onclick"] = GetOnClickHandler(c);
        return(link);
    }
Пример #2
0
        public void InstantiateIn(Control container)
        {
            PivotGridFieldValueTemplateContainer c    = (PivotGridFieldValueTemplateContainer)container;
            PivotGridFieldValueHtmlCell          cell = c.CreateFieldValue();

            cell.Controls.AddAt(cell.Controls.IndexOf(cell.TextControl), new HeaderLink());
            cell.Controls.Remove(cell.TextControl);
            c.Controls.Add(cell);
        }
Пример #3
0
    string GetOnClickHandler(PivotGridFieldValueTemplateContainer c)
    {
        StringBuilder res = new StringBuilder();

        res.Append(pivotGrid.ClientInstanceName).Append(".PerformCallback('SC|");
        res.Append(GetFieldIndex(c.ValueItem)).Append("|")
        .Append(c.ValueItem.IsColumn).Append("|")
        .Append(c.ValueItem.MaxLastLevelIndex).Append("|")
        .Append(c.ValueItem.DataIndex);
        res.Append("');");
        return(res.ToString());
    }
Пример #4
0
    public void InstantiateIn(Control container)
    {
        PivotGridFieldValueTemplateContainer c    = (PivotGridFieldValueTemplateContainer)container;
        PivotGridFieldValueHtmlCell          cell = c.CreateFieldValue();

        if (c.ValueItem.CanShowSortBySummary && !c.ValueItem.IsAnyFieldSortedByThisValue)
        {
            cell.Controls.AddAt(cell.Controls.IndexOf(cell.TextControl), GetHyperLink(c));
            cell.Controls.Remove(cell.TextControl);
        }
        c.Controls.Add(cell);
    }
Пример #5
0
        public void InstantiateIn(Control container)
        {
            PivotGridFieldValueTemplateContainer c    = (PivotGridFieldValueTemplateContainer)container;
            PivotGridFieldValueHtmlCell          cell = c.CreateFieldValue();
            PivotFieldValueItem      valueItem        = c.ValueItem;
            PivotDrillDownDataSource ds = valueItem.CreateDrillDownDataSource();
            int id = Convert.ToInt32(ds[0]["ProductID"]);

            cell.Controls.AddAt(cell.Controls.IndexOf(cell.TextControl), new MyLink(c.Text, id));
            cell.Controls.Remove(cell.TextControl);
            c.Controls.Add(cell);
        }
Пример #6
0
        public void InstantiateIn(Control container)
        {
            PivotGridFieldValueTemplateContainer c = (PivotGridFieldValueTemplateContainer)container;
            ASPxLabel label = new ASPxLabel();

            label.Text = c.Text;
            label.JSProperties.Add("cpArea", c.ValueItem.Area.ToString());
            string val =
                PivotGridValueType.GrandTotal == c.ValueItem.ValueType ? "Grand Total" : c.Value.ToString();

            label.JSProperties.Add("cpValue", val);
            label.ClientSideEvents.Click =
                "function(s, e) { pivot.PerformCallback('SL|' + s.cpValue + '|' + s.cpArea); }";
            label.EnableViewState = false;
            c.Controls.Add(label);
        }
Пример #7
0
        public void InstantiateIn(Control container)
        {
            PivotGridFieldValueTemplateContainer c    = (PivotGridFieldValueTemplateContainer)container;
            PivotGridFieldValueHtmlCell          cell = c.CreateFieldValue();
            PivotFieldValueItem      valueItem        = c.ValueItem;
            PivotFieldValueEventArgs helperArgs       = new PivotFieldValueEventArgs(valueItem);

            PivotGridField[] fields      = helperArgs.GetHigherLevelFields();
            List <object>    fieldValues = new List <object>();

            foreach (PivotGridField field in fields)
            {
                object currentValue = helperArgs.GetHigherLevelFieldValue(field);
                if (currentValue != null)
                {
                    fieldValues.Add(currentValue);
                }
            }

            cell.Controls.AddAt(cell.Controls.IndexOf(cell.TextControl), new MyLink(c.Text, fieldValues));
            cell.Controls.Remove(cell.TextControl);
            c.Controls.Add(cell);
        }