示例#1
0
        protected void AddStep(object dataItem, Control container)
        {
            if (dataItem == null)
            {
                return;
            }

            var title          = DataBinder.GetPropertyValue(dataItem, TitleDataPropertyName, null);
            var indexValue     = DataBinder.GetPropertyValue(dataItem, IndexDataPropertyName);
            var activeValue    = DataBinder.GetPropertyValue(dataItem, ActiveDataPropertyName);
            var completedValue = DataBinder.GetPropertyValue(dataItem, CompletedDataPropertyName);
            var index          = Convert.ToInt32(indexValue);
            var active         = Convert.ToBoolean(activeValue);
            var completed      = Convert.ToBoolean(completedValue);
            var step           = new ProgressStep(index, title, active, completed);
            var item           = new HtmlGenericControl("li");

            item.AddClass("list-group-item");

            item.InnerHtml = PrependStepIndexToTitle ? string.Format("<span class='number'>{0}</span>{1}", ZeroBasedIndex ? (step.Index + 1) : step.Index, step.Title) : step.Title;

            if (step.IsActive)
            {
                item.AddClass("active");
            }
            else if (step.IsCompleted)
            {
                item.AddClass("text-muted list-group-item-success");
                item.InnerHtml += "<span class='glyphicon glyphicon-ok'></span>";
            }
            else
            {
                item.AddClass("incomplete");
            }

            container.Controls.Add(item);
        }