如何给GridView添加滚动条
第一种方法
<div style="overflow-y: scroll; height: 200px">
<asp:GridView ID="GridView1" runat="server" Font-Size="12px" BackColor="#FFFFFF"
GridLines="Both" CellPadding="4" Width="560">
<HeaderStyle BackColor="#EDEDED" Height="26px" />
</asp:GridView>
</div>
第二种方法
?Gridview放到一個div里面,設置div的style= "overflow: auto; "
再加CSS (樣式表) .DataGridFixedHeader
{
POSITION: relative ;
TOP: expression(this.offsetParent.scrollTop);
BACKGROUND-COLOR: blue ;
height:25px;
color:#ffffff;
text-align:center ;
vertical-align:middle;
font-weight:bold;
font-size:13px;
background-color:#5D7B9D;
}
設置Gridview的 HeaderStyle的CSSClass= "DataGridFixedHeader "
GridViewBound:
protected void GridViewBound(int index, string startTime, string endTime, string Manufacturer, string Corporation, string anno, string invoice)
{
if (!isEdit)
{
GridView1.EditIndex = -1;
}
string strConn = System.Configuration.ConfigurationManager.ConnectionStrings["Amebiz.connection"].ToString();
SqlConnection sqlConn = new SqlConnection(strConn);
string strCommand = "";
SqlCommand sqlCmd = new SqlCommand(strCommand, sqlConn);
SqlDataAdapter sqlAdapter = new SqlDataAdapter(sqlCmd);
DataSet dataSet = new DataSet();
sqlAdapter.Fill(dataSet, "BlueIdea");
DataTable dataTable = dataSet.Tables["BlueIdea"];
PagedDataSource pds = new PagedDataSource();
pds.DataSource = dataTable.DefaultView;
pds.AllowPaging = true;
pds.PageSize = 50;
pds.CurrentPageIndex = index - 1;
lbNowPage.Text = Convert.ToString(index);
lbTotalPages.Text = Convert.ToString(pds.PageCount);
GridView1.DataSource = pds;
GridView1.DataBind();
GridView1.DataKeyNames = new string[] { "序號" };//主鍵
}
protected void btnUp_Click(object sender, EventArgs e)
{
GridView1.EditIndex = -1;
isEdit = false;
if (lbNowPage.Text == "1")
{
return;
}
else
{
GridViewBound(Convert.ToInt32(lbNowPage.Text) - 1,
Starttime.Text.ToString(),
Endtime.Text.ToString(),
manufacturer.Text.ToString().Trim(),
corporation.Text.ToString().Trim(),
anno.Text.ToString().Trim(),
invoice.Text.ToString().Trim());
}
}
protected void btnDown_Click(object sender, EventArgs e)
{
GridView1.EditIndex = -1;
isEdit = false;
if (lbNowPage.Text == lbTotalPages.Text)
{
return;
}
else
{
GridViewBound(Convert.ToInt32(lbNowPage.Text) + 1,
Starttime.Text.ToString(),
Endtime.Text.ToString(),
manufacturer.Text.ToString().Trim(),
corporation.Text.ToString().Trim(),
anno.Text.ToString().Trim(),
invoice.Text.ToString().Trim());
}
}
//修改
public void Dataupdate(string fapxu, string jiebno, string lizday, string ruxtday, string zt, string sfkday)
{
string strConn = System.Configuration.ConfigurationManager.ConnectionStrings["Amebiz.connection"].ToString();
SqlConnection con = new SqlConnection(strConn);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
con.Open();
cmd.CommandText = "";
cmd.ExecuteNonQuery();
con.Close();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
isEdit = true;
GridView1.EditIndex = e.NewEditIndex;
GridViewBound(Convert.ToInt32(lbNowPage.Text),
Starttime.Text.ToString(),
Endtime.Text.ToString(),
manufacturer.Text.ToString().Trim(),
corporation.Text.ToString().Trim(),
anno.Text.ToString().Trim(),
invoice.Text.ToString().Trim());
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
isEdit = false;
GridViewBound(Convert.ToInt32(lbNowPage.Text),
Starttime.Text.ToString(),
Endtime.Text.ToString(),
manufacturer.Text.ToString().Trim(),
corporation.Text.ToString().Trim(),
anno.Text.ToString().Trim(),
invoice.Text.ToString().Trim());
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string key = GridView1.DataKeys[e.RowIndex].Value.ToString();
string jiebno = ((System.Web.UI.WebControls.TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox5")).Text.Trim();
string lizday = ((System.Web.UI.WebControls.TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox2")).Text.Trim();
string ruxtday = ((System.Web.UI.WebControls.TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox3")).Text.Trim();
string zt = ((System.Web.UI.WebControls.DropDownList)GridView1.Rows[e.RowIndex].FindControl("DropDownList1")).SelectedValue.ToString().Trim();
string sfkday = ((System.Web.UI.WebControls.TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox6")).Text.Trim();
Dataupdate(key, jiebno, lizday, ruxtday, zt, sfkday);
GridView1.EditIndex = -1;
isEdit = false;
GridViewBound(Convert.ToInt32(lbNowPage.Text),
Starttime.Text.ToString(),
Endtime.Text.ToString(),
manufacturer.Text.ToString().Trim(),
corporation.Text.ToString().Trim(),
anno.Text.ToString().Trim(),
invoice.Text.ToString().Trim());
}
protected static string ChangString(Object obj)
{
if (obj != null)
{
string date = Convert.ToString(obj);
if (date == "1753/01/01" | date == "1900/01/01")
return "";
else
return Convert.ToString(obj);
}
else
return "";
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//鼠標放置改變顏色
for (int i = 0; i < GridView1.Rows.Count; i++)
{
//首先判斷是否是數据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//當鼠標停留時更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#C0C0C0'");
//當鼠標移開時還原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
}
}
//if (e.Row.RowIndex > -1 && e.Row.RowIndex != GridView1.EditIndex)
//{
// for (int i = 0; i < 11; i++)
// {
// e.Row.Cells[i].Attributes.Add("ondblclick", "window.showModalDialog('SendCost.aspx?index=" + GridView1.DataKeys
[e.Row.RowIndex].Value.ToString().Trim() + "&gridid=" + this.GridView1.ClientID + "','','dialogWidth=340px;dialogHeight=360px');");
// }
//}
}
}