<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ListECR.aspx.cs" Inherits="FileECR.Webs.ListECR" %>
<%@ Register Src="WebHead.ascx" TagName="WebHead" TagPrefix="uc1" %>
<%@ Register Src="WebFoot.ascx" TagName="WebFoot" TagPrefix="uc2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ECR文管系统</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="shortcut icon" href="Images/favicon.ico"/>
<link href="Styles/Style.css" rel="stylesheet" type="text/css" />
<link href="Styles/LightStyle.css" rel="stylesheet" type="text/css" />
<script language="javascript" src="Scripts/Check.js" type="text/javascript"></script>
<link href="Styles/HeadStyle.css" rel="stylesheet" type="text/css" />
<link href="Styles/RoundStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form2" runat="server">
<uc1:WebHead ID="WebHead1" runat="server" />
<br/>
<div id="Whatever">
<ul class="TabBarLevel1" id="TabPage1">
<li id="Tab1"><a href="AddECR.aspx">工程申请</a></li>
<li id="Tab2" class="Selected"><a href="ListECR.aspx">工程清单</a></li>
<li id="Tab3"><asp:HyperLink ID="hlUserAd" NavigateUrl="~/userAdmin.aspx" runat="server">用户管理</asp:HyperLink></li>
<li id="Tab4"><asp:HyperLink ID="hlConfigMo" NavigateUrl="~/ConfigModify.aspx" runat="server">系统设置</asp:HyperLink></li>
</ul>
</div>
<br/>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="2%"> </td>
<td width="98%">
<asp:Menu ID="Menu1" runat="server" StaticSubMenuIndent="10px"
Orientation="Horizontal" OnMenuItemClick="Menu1_MenuItemClick" Font-Bold="True">
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" BorderColor="#CCCCCC"
BorderStyle="Solid" BorderWidth="1px" />
<StaticSelectedStyle BackColor="#CCCCCC" ForeColor="White" BorderStyle="Inset" />
<StaticHoverStyle BackColor="CornflowerBlue" ForeColor="White" BorderStyle="Inset" />
<Items>
<asp:MenuItem Text="所有申请单" Value="0" Selected="True"></asp:MenuItem>
<asp:MenuItem Text="我的申请单" Value="1"></asp:MenuItem>
<asp:MenuItem Text="我的审核单" Value="2"></asp:MenuItem>
</Items>
</asp:Menu>
</td>
</tr>
</table>
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
<asp:View ID="View1" runat="server">
<div>
<div id="nifty">
<b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b>
<div>
<asp:GridView ID="myGridView" runat="server" DataKeyNames="id" AutoGenerateColumns="False" HorizontalAlign="Center" Width="100%" AllowSorting="True" EmptyDataText="没有信息" OnPageIndexChanging="myGridView_PageIndexChanging" OnRowCreated="myGridView_RowCreated" OnRowDataBound="myGridView_RowDataBound" OnSorting="myGridView_Sorting" AllowPaging="True">
<Columns>
<asp:BoundField HeaderText="序号" >
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="5%" />
</asp:BoundField>
<asp:BoundField DataField="stime" HeaderText="申请日期" SortExpression="stime">
<HeaderStyle HorizontalAlign="Center" Width="10%" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="username" HeaderText="申请人" SortExpression="username">
<HeaderStyle HorizontalAlign="Left" Width="20%" />
</asp:BoundField>
<asp:BoundField DataField="deptname" HeaderText="申请单位" SortExpression="deptname">
<HeaderStyle HorizontalAlign="Left" Width="20%" />
</asp:BoundField>
<asp:BoundField DataField="tabno" HeaderText="表单编号" SortExpression="tabno">
<HeaderStyle HorizontalAlign="Left" Width="10%" />
</asp:BoundField>
<asp:TemplateField HeaderText="签核状态" SortExpression="state">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="12%" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# ConvertState(Eval("state").ToString())%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="完成状态" SortExpression="end_mk">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="8%" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("end_mk").ToString()=="True"?"已完成":"未完成"%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="操作">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="10%" />
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ecrnewid", "~/ShowECR.aspx?ecrnewid={0}") %>'>详情</asp:HyperLink> /
<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("ecrnewid", "~/ShowECR.aspx?printid={0}") %>'>打印</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<input id="CheckAll" type="checkbox" onclick="selectAll(this)" />
</HeaderTemplate>
<ItemTemplate>
<input id="chkID" name="chkID" type="checkbox" value='<%# Eval("id")%>' onclick="selectOne(this)" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="5%" />
</asp:TemplateField>
</Columns>
<HeaderStyle BackColor="#CCCCCC" />
<RowStyle BackColor="White" />
<EditRowStyle BackColor="AliceBlue" />
<PagerSettings Visible="False" />
</asp:GridView>
</div>
<b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b>
</div>
</div>
</asp:View>
<asp:View ID="View2" runat="server">
<div>
<table width="98%" align="center" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF">现在显示的是标签2</td>
</tr>
</table>
</div>
</asp:View>
<asp:View ID="View3" runat="server">
<div>
<table width="98%" align="center" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF">现在显示的是标签3</td>
</tr>
</table>
</div>
</asp:View>
</asp:MultiView>
<table width="98%" height="25" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:Label ID="labRecordCount" runat="server"></asp:Label>
<asp:Label ID="labPageCount" runat="server"></asp:Label>
<asp:Label ID="labPageRecord" runat="server"></asp:Label>
</td>
<td align="right">
<asp:LinkButton ID="btnFirst" CommandArgument="first" OnClick="PagerButtonClick" runat="server">首 页</asp:LinkButton>
<asp:LinkButton ID="btnPrev" CommandArgument="prev" OnClick="PagerButtonClick" runat="server">上一页</asp:LinkButton>
<asp:LinkButton ID="btnNext" CommandArgument="next" OnClick="PagerButtonClick" runat="server">下一页</asp:LinkButton>
<asp:LinkButton ID="btnLast" CommandArgument="last" OnClick="PagerButtonClick" runat="server">尾 页</asp:LinkButton>
</td>
</tr>
</table>
<uc2:WebFoot ID="WebFoot1" runat="server" />
</form>
</body>
</html>
<%@ Register Src="WebHead.ascx" TagName="WebHead" TagPrefix="uc1" %>
<%@ Register Src="WebFoot.ascx" TagName="WebFoot" TagPrefix="uc2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ECR文管系统</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="shortcut icon" href="Images/favicon.ico"/>
<link href="Styles/Style.css" rel="stylesheet" type="text/css" />
<link href="Styles/LightStyle.css" rel="stylesheet" type="text/css" />
<script language="javascript" src="Scripts/Check.js" type="text/javascript"></script>
<link href="Styles/HeadStyle.css" rel="stylesheet" type="text/css" />
<link href="Styles/RoundStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form2" runat="server">
<uc1:WebHead ID="WebHead1" runat="server" />
<br/>
<div id="Whatever">
<ul class="TabBarLevel1" id="TabPage1">
<li id="Tab1"><a href="AddECR.aspx">工程申请</a></li>
<li id="Tab2" class="Selected"><a href="ListECR.aspx">工程清单</a></li>
<li id="Tab3"><asp:HyperLink ID="hlUserAd" NavigateUrl="~/userAdmin.aspx" runat="server">用户管理</asp:HyperLink></li>
<li id="Tab4"><asp:HyperLink ID="hlConfigMo" NavigateUrl="~/ConfigModify.aspx" runat="server">系统设置</asp:HyperLink></li>
</ul>
</div>
<br/>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="2%"> </td>
<td width="98%">
<asp:Menu ID="Menu1" runat="server" StaticSubMenuIndent="10px"
Orientation="Horizontal" OnMenuItemClick="Menu1_MenuItemClick" Font-Bold="True">
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" BorderColor="#CCCCCC"
BorderStyle="Solid" BorderWidth="1px" />
<StaticSelectedStyle BackColor="#CCCCCC" ForeColor="White" BorderStyle="Inset" />
<StaticHoverStyle BackColor="CornflowerBlue" ForeColor="White" BorderStyle="Inset" />
<Items>
<asp:MenuItem Text="所有申请单" Value="0" Selected="True"></asp:MenuItem>
<asp:MenuItem Text="我的申请单" Value="1"></asp:MenuItem>
<asp:MenuItem Text="我的审核单" Value="2"></asp:MenuItem>
</Items>
</asp:Menu>
</td>
</tr>
</table>
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
<asp:View ID="View1" runat="server">
<div>
<div id="nifty">
<b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b>
<div>
<asp:GridView ID="myGridView" runat="server" DataKeyNames="id" AutoGenerateColumns="False" HorizontalAlign="Center" Width="100%" AllowSorting="True" EmptyDataText="没有信息" OnPageIndexChanging="myGridView_PageIndexChanging" OnRowCreated="myGridView_RowCreated" OnRowDataBound="myGridView_RowDataBound" OnSorting="myGridView_Sorting" AllowPaging="True">
<Columns>
<asp:BoundField HeaderText="序号" >
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="5%" />
</asp:BoundField>
<asp:BoundField DataField="stime" HeaderText="申请日期" SortExpression="stime">
<HeaderStyle HorizontalAlign="Center" Width="10%" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="username" HeaderText="申请人" SortExpression="username">
<HeaderStyle HorizontalAlign="Left" Width="20%" />
</asp:BoundField>
<asp:BoundField DataField="deptname" HeaderText="申请单位" SortExpression="deptname">
<HeaderStyle HorizontalAlign="Left" Width="20%" />
</asp:BoundField>
<asp:BoundField DataField="tabno" HeaderText="表单编号" SortExpression="tabno">
<HeaderStyle HorizontalAlign="Left" Width="10%" />
</asp:BoundField>
<asp:TemplateField HeaderText="签核状态" SortExpression="state">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="12%" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# ConvertState(Eval("state").ToString())%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="完成状态" SortExpression="end_mk">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="8%" />
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("end_mk").ToString()=="True"?"已完成":"未完成"%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="操作">
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="10%" />
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ecrnewid", "~/ShowECR.aspx?ecrnewid={0}") %>'>详情</asp:HyperLink> /
<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("ecrnewid", "~/ShowECR.aspx?printid={0}") %>'>打印</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
<input id="CheckAll" type="checkbox" onclick="selectAll(this)" />
</HeaderTemplate>
<ItemTemplate>
<input id="chkID" name="chkID" type="checkbox" value='<%# Eval("id")%>' onclick="selectOne(this)" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" Width="5%" />
</asp:TemplateField>
</Columns>
<HeaderStyle BackColor="#CCCCCC" />
<RowStyle BackColor="White" />
<EditRowStyle BackColor="AliceBlue" />
<PagerSettings Visible="False" />
</asp:GridView>
</div>
<b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b>
</div>
</div>
</asp:View>
<asp:View ID="View2" runat="server">
<div>
<table width="98%" align="center" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF">现在显示的是标签2</td>
</tr>
</table>
</div>
</asp:View>
<asp:View ID="View3" runat="server">
<div>
<table width="98%" align="center" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF">现在显示的是标签3</td>
</tr>
</table>
</div>
</asp:View>
</asp:MultiView>
<table width="98%" height="25" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:Label ID="labRecordCount" runat="server"></asp:Label>
<asp:Label ID="labPageCount" runat="server"></asp:Label>
<asp:Label ID="labPageRecord" runat="server"></asp:Label>
</td>
<td align="right">
<asp:LinkButton ID="btnFirst" CommandArgument="first" OnClick="PagerButtonClick" runat="server">首 页</asp:LinkButton>
<asp:LinkButton ID="btnPrev" CommandArgument="prev" OnClick="PagerButtonClick" runat="server">上一页</asp:LinkButton>
<asp:LinkButton ID="btnNext" CommandArgument="next" OnClick="PagerButtonClick" runat="server">下一页</asp:LinkButton>
<asp:LinkButton ID="btnLast" CommandArgument="last" OnClick="PagerButtonClick" runat="server">尾 页</asp:LinkButton>
</td>
</tr>
</table>
<uc2:WebFoot ID="WebFoot1" runat="server" />
</form>
</body>
</html>
cs:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace FileECR.Webs
{
public partial class ListECR : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ValiBin();
if (!IsPostBack)
{
GridViewBind();
}
}
//验证是否管理员
private void ValiBin()
{
//string strAdmPass = WebClass.UserList.ListUserAdmin(User.Identity.Name);
HttpCookie userCookie = Request.Cookies["theCookieWSF"];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(userCookie.Value);
string[] SPsecretData = ticket.UserData.Split(new char[] { ',' });
string strAdmPass = SPsecretData[1];
hlUserAd.Visible = (strAdmPass == "True" ? true : false);
hlConfigMo.Visible = (strAdmPass == "True" ? true : false);
}
private void GridViewBind()
{
//監測當前的排序狀況
if (this.ViewState["orderByName"] == null)
{
ViewState["orderByName"] = "username";
ViewState["orderByType"] = "asc";
}
//獲取當前ViewState中保存的排序
string orderByName = this.ViewState["orderByName"].ToString();
string orderByType = this.ViewState["orderByType"].ToString();
WebClass.ECRList tmp = new WebClass.ECRList();
DataTable dt = tmp.ECRAllMsgList();
DataView dv = dt.DefaultView;
dv.Sort = orderByName + " " + orderByType;
myGridView.DataSource = dv;
myGridView.DataBind();
labRecordCount.Text = "共<font color='red'>" + dt.Rows.Count.ToString() + "</font>筆記錄";
labPageCount.Text = "頁次<font color='blue'>" + (myGridView.PageIndex + 1).ToString() + "</font>/<font color='red'>" + myGridView.PageCount.ToString() + "</font>頁";
labPageRecord.Text = "<font color='red'>" + myGridView.PageSize.ToString() + "</font>筆記錄/頁";
if (dt.Rows.Count == 0)
{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
labRecordCount.Visible = false;
labPageCount.Visible = false;
labPageRecord.Visible = false;
}
else if (myGridView.PageCount == 1)
{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
labRecordCount.Visible = false;
labPageCount.Visible = false;
labPageRecord.Visible = false;
}
btnFirst.CommandName = "1";
btnPrev.CommandName = (myGridView.PageIndex == 0 ? "1" : myGridView.PageIndex.ToString());
btnNext.CommandName = (myGridView.PageCount == 1 ? myGridView.PageCount.ToString() : (myGridView.PageIndex + 2).ToString());
btnLast.CommandName = myGridView.PageCount.ToString();
BtnValidate();
}
private void BtnValidate()
{
if (myGridView.PageIndex + 1 >= myGridView.PageCount)
{
btnNext.Enabled = false;
btnLast.Enabled = false;
}
else
{
btnNext.Enabled = true;
btnLast.Enabled = true;
}
if (myGridView.PageIndex + 1 <= 1)
{
btnPrev.Enabled = false;
btnFirst.Enabled = false;
}
else
{
btnPrev.Enabled = true;
btnFirst.Enabled = true;
}
}
//签核状态
public string ConvertState(string str)
{
string retmsg = "";
switch (str)
{
case "0":
retmsg = "主管签核中";
break;
case "2":
retmsg = "研发主管<br/>签核中";
break;
case "3":
retmsg = "研发最高主管<br/>签核中";
break;
case "4":
retmsg = "PLM用户";
break;
case "5":
retmsg = "QA确认中";
break;
case "6":
retmsg = "会签中";
break;
default:
retmsg = "申请中";
break;
}
return retmsg;
}
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
MultiView1.ActiveViewIndex = int.Parse(e.Item.Value);
}
protected void PagerButtonClick(object sender, EventArgs e)
{
myGridView.PageIndex = Convert.ToInt32(((LinkButton)sender).CommandName) - 1;
GridViewBind();
}
protected void myGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
myGridView.PageIndex = e.NewPageIndex;
GridViewBind();
}
protected void myGridView_Sorting(object sender, GridViewSortEventArgs e)
{
this.setViewState(e.SortExpression, this.ViewState["orderByType"].ToString() == "asc" ? "desc" : "asc");
GridViewBind();
}
/// <summary>
/// 以ViewState控制排序,寫入排序字段名及排序方式
/// </summary>
private void setViewState(string orderByName, string orderByType)
{
ViewState["orderByName"] = orderByName;
ViewState["orderByType"] = orderByType;
}
private string SortExpression
{
get
{
if (ViewState["orderByName"] != null && ViewState["orderByName"].ToString() != string.Empty)
{
return ViewState["orderByName"].ToString();
}
else
{
return "";
}
}
set
{
ViewState["orderByName"] = value;
}
}
private string sort
{
get
{
if (ViewState["orderByType"] != null && ViewState["orderByType"].ToString() != string.Empty)
{
return ViewState["orderByType"].ToString();
}
else
{
return "";
}
}
set
{
ViewState["orderByType"] = value;
}
}
protected void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex != -1)
{
int indexID = this.myGridView.PageIndex * this.myGridView.PageSize + e.Row.RowIndex + 1;
e.Row.Cells[0].Text = indexID.ToString();
}
}
protected void myGridView_RowCreated(object sender, GridViewRowEventArgs e)
{
for (int i = 0; i < myGridView.Columns.Count; i++)
{
//if (i == 0) continue;
if (e.Row.RowIndex == -1)
{
if (myGridView.Columns[i].SortExpression == SortExpression)
{
try
{
TableCell tableCell = e.Row.Cells[i];
Image img = new Image();
img.ImageUrl = (sort == "desc" ? "~/Images/sortascending.gif" : "~/Images/sortdescending.gif");
tableCell.Controls.Add(img);
}
catch { }
}
}
}
}
}
}
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace FileECR.Webs
{
public partial class ListECR : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ValiBin();
if (!IsPostBack)
{
GridViewBind();
}
}
//验证是否管理员
private void ValiBin()
{
//string strAdmPass = WebClass.UserList.ListUserAdmin(User.Identity.Name);
HttpCookie userCookie = Request.Cookies["theCookieWSF"];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(userCookie.Value);
string[] SPsecretData = ticket.UserData.Split(new char[] { ',' });
string strAdmPass = SPsecretData[1];
hlUserAd.Visible = (strAdmPass == "True" ? true : false);
hlConfigMo.Visible = (strAdmPass == "True" ? true : false);
}
private void GridViewBind()
{
//監測當前的排序狀況
if (this.ViewState["orderByName"] == null)
{
ViewState["orderByName"] = "username";
ViewState["orderByType"] = "asc";
}
//獲取當前ViewState中保存的排序
string orderByName = this.ViewState["orderByName"].ToString();
string orderByType = this.ViewState["orderByType"].ToString();
WebClass.ECRList tmp = new WebClass.ECRList();
DataTable dt = tmp.ECRAllMsgList();
DataView dv = dt.DefaultView;
dv.Sort = orderByName + " " + orderByType;
myGridView.DataSource = dv;
myGridView.DataBind();
labRecordCount.Text = "共<font color='red'>" + dt.Rows.Count.ToString() + "</font>筆記錄";
labPageCount.Text = "頁次<font color='blue'>" + (myGridView.PageIndex + 1).ToString() + "</font>/<font color='red'>" + myGridView.PageCount.ToString() + "</font>頁";
labPageRecord.Text = "<font color='red'>" + myGridView.PageSize.ToString() + "</font>筆記錄/頁";
if (dt.Rows.Count == 0)
{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
labRecordCount.Visible = false;
labPageCount.Visible = false;
labPageRecord.Visible = false;
}
else if (myGridView.PageCount == 1)
{
btnFirst.Visible = false;
btnPrev.Visible = false;
btnNext.Visible = false;
btnLast.Visible = false;
labRecordCount.Visible = false;
labPageCount.Visible = false;
labPageRecord.Visible = false;
}
btnFirst.CommandName = "1";
btnPrev.CommandName = (myGridView.PageIndex == 0 ? "1" : myGridView.PageIndex.ToString());
btnNext.CommandName = (myGridView.PageCount == 1 ? myGridView.PageCount.ToString() : (myGridView.PageIndex + 2).ToString());
btnLast.CommandName = myGridView.PageCount.ToString();
BtnValidate();
}
private void BtnValidate()
{
if (myGridView.PageIndex + 1 >= myGridView.PageCount)
{
btnNext.Enabled = false;
btnLast.Enabled = false;
}
else
{
btnNext.Enabled = true;
btnLast.Enabled = true;
}
if (myGridView.PageIndex + 1 <= 1)
{
btnPrev.Enabled = false;
btnFirst.Enabled = false;
}
else
{
btnPrev.Enabled = true;
btnFirst.Enabled = true;
}
}
//签核状态
public string ConvertState(string str)
{
string retmsg = "";
switch (str)
{
case "0":
retmsg = "主管签核中";
break;
case "2":
retmsg = "研发主管<br/>签核中";
break;
case "3":
retmsg = "研发最高主管<br/>签核中";
break;
case "4":
retmsg = "PLM用户";
break;
case "5":
retmsg = "QA确认中";
break;
case "6":
retmsg = "会签中";
break;
default:
retmsg = "申请中";
break;
}
return retmsg;
}
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
MultiView1.ActiveViewIndex = int.Parse(e.Item.Value);
}
protected void PagerButtonClick(object sender, EventArgs e)
{
myGridView.PageIndex = Convert.ToInt32(((LinkButton)sender).CommandName) - 1;
GridViewBind();
}
protected void myGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
myGridView.PageIndex = e.NewPageIndex;
GridViewBind();
}
protected void myGridView_Sorting(object sender, GridViewSortEventArgs e)
{
this.setViewState(e.SortExpression, this.ViewState["orderByType"].ToString() == "asc" ? "desc" : "asc");
GridViewBind();
}
/// <summary>
/// 以ViewState控制排序,寫入排序字段名及排序方式
/// </summary>
private void setViewState(string orderByName, string orderByType)
{
ViewState["orderByName"] = orderByName;
ViewState["orderByType"] = orderByType;
}
private string SortExpression
{
get
{
if (ViewState["orderByName"] != null && ViewState["orderByName"].ToString() != string.Empty)
{
return ViewState["orderByName"].ToString();
}
else
{
return "";
}
}
set
{
ViewState["orderByName"] = value;
}
}
private string sort
{
get
{
if (ViewState["orderByType"] != null && ViewState["orderByType"].ToString() != string.Empty)
{
return ViewState["orderByType"].ToString();
}
else
{
return "";
}
}
set
{
ViewState["orderByType"] = value;
}
}
protected void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex != -1)
{
int indexID = this.myGridView.PageIndex * this.myGridView.PageSize + e.Row.RowIndex + 1;
e.Row.Cells[0].Text = indexID.ToString();
}
}
protected void myGridView_RowCreated(object sender, GridViewRowEventArgs e)
{
for (int i = 0; i < myGridView.Columns.Count; i++)
{
//if (i == 0) continue;
if (e.Row.RowIndex == -1)
{
if (myGridView.Columns[i].SortExpression == SortExpression)
{
try
{
TableCell tableCell = e.Row.Cells[i];
Image img = new Image();
img.ImageUrl = (sort == "desc" ? "~/Images/sortascending.gif" : "~/Images/sortdescending.gif");
tableCell.Controls.Add(img);
}
catch { }
}
}
}
}
}
}