The old post is available in this location:- Old Code for Progress Bar in GridView
Notes:-
- For Percentcomplete column keep 0 as default value.
- Specify Minimum value as 0 and Maximum value as 100.
- Create one caluclated column in Tasks List with name ConvertPC.
- Now in the column do the settings3and code as shown in the below figure.
- This is used to convert double value into Percentage.
- Now Press ok and take the TemplateField in the GridView and do the changes as shown in the ascx file.
Ascx
<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls"
Assembly="Microsoft.SharePoint,
Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities"
Assembly="Microsoft.SharePoint,
Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions,
Version=3.5.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages"
Assembly="Microsoft.SharePoint,
Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TestPBarUserControl.ascx.cs"
Inherits="TestPBar.TestPBar.TestPBarUserControl" %>
<asp:GridView ID="dgvProgressBarSample" runat="server" CellPadding="4"
EnableModelValidation="True" ForeColor="#333333" GridLines="Both"
AutoGenerateColumns="false"Width="100%">
<AlternatingRowStyle BackColor="White" />
<EditRowStyle BackColor="#7C6F57" />
<FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#E3EAEB" />
<SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />
<Columns>
<asp:BoundField HeaderText="Title" DataField="Title" />
<asp:TemplateField HeaderText="% Complete">
<ItemTemplate><div><table width="<%# Eval("ConvertPC") %>%" bgcolor="yellow">
<tr><td><strong><%#Eval("ConvertPC") %>%</strong></td></tr></table></div></ItemTemplate>
<AlternatingItemTemplate><div><table width="<%# Eval("ConvertPC") %>%"
bgcolor="yellow"><tr><td><strong><%# Eval("ConvertPC") %>%</strong></td></tr>
</table></div></AlternatingItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Ascx.cs
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using System.Security;
namespace TestPBar.TestPBar
{
public partial class TestPBarUserControl : UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
SPWeb currentMeb = SPContext.Current.Web;
SPList lst = currentMeb.Lists["Tasks"];
SPQuery sQuery = new SPQuery();
sQuery.Query = "";
SPListItemCollection myColl = lst.GetItems(sQuery);
if (myColl.Count > 0)
{
dgvProgressBarSample.DataSource = myColl.GetDataTable();
dgvProgressBarSample.DataBind();
}
}
}
}
No comments:
Post a Comment