GridView控件修改、删除示例(修改含有DropDownList控件)

GridView控件修改、删除示例(修改含有DropDownList控件)

Posted on 2006-05-16 10:54 星期零 阅读(160) 评论(0) 编辑收藏 收藏至365Key 所属分类: Asp.Net2.0

GridView控件修改、删除例子,修改时含有DropDownList控件。
示例运行效果图:

GridViewUp.aspx
文件代码:

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="GridViewUp.aspx.cs"Inherits="gridview_GridViewUp"%>

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title>无标题页</title>
</head>
<body>
<formid="form1"runat="server">
<div>
<tablecellpadding="0"cellspacing="0"border="0"width="80%"style="font-size:11px">
<tr>
<tdalign="center">
<asp:GridViewID="GridView1"runat="server"Width="100%"CellPadding="4"ForeColor="#333333"
AutoGenerateColumns
="False"AllowPaging="True"PageSize="12"OnRowCancelingEdit="GridView1_RowCancelingEdit"
OnRowEditing
="GridView1_RowEditing"OnRowUpdating="GridView1_RowUpdating"OnRowDeleting="GridView1_RowDeleting"
DataKeyNames
="id,name"OnPageIndexChanging="GridView1_PageIndexChanging"DataMember="card,price"OnRowDataBound="GridView1_RowDataBound"GridLines="None">
<Columns>
<asp:BoundFieldHeaderText="编号"DataField="id"ReadOnly="True"/>
<asp:BoundFieldDataField="name"HeaderText="姓名"ReadOnly="True"/>
<asp:TemplateFieldHeaderText="身份证号">
<ItemTemplate>
<%#
Eval("card")%>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBoxID="TBCard"Text='<%#Eval("card")%>'runat="server"Width="140px"/>
</EditItemTemplate>
<ItemStyleWidth="150px"/>
</asp:TemplateField>
<asp:TemplateFieldHeaderText="学历">
<ItemTemplate>
<%#
Eval("xueliText")%>
</ItemTemplate>
<EditItemTemplate>
<asp:HiddenFieldID="HDFXueli"runat="server"Value='<%#Eval("xueli")%>'/>
<asp:DropDownListID="DDLXueli"runat="server"Width="90px"/>
</EditItemTemplate>
<ItemStyleWidth="100px"/>
</asp:TemplateField>
<asp:TemplateFieldHeaderText="价格">
<ItemTemplate>
<%#
Eval("price")%>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBoxID="TBPrice"Text='<%#Eval("price")%>'runat="server"Width="90px"/>
</EditItemTemplate>
<ItemStyleWidth="100px"/>
</asp:TemplateField>
<asp:BoundFieldHeaderText="建立时间"DataField="createdate"ReadOnly="True"/>
<asp:CommandFieldShowDeleteButton="True"ShowEditButton="True"HeaderText="操作"/>
</Columns>
<PagerSettingsFirstPageText=""LastPageText=""NextPageText=""PreviousPageText=""/>
<RowStyleHeight="20px"BackColor="#F7F6F3"ForeColor="#333333"/>
<FooterStyleBackColor="#5D7B9D"Font-Bold="True"ForeColor="White"/>
<EditRowStyleBackColor="#999999"/>
<SelectedRowStyleBackColor="#E2DED6"Font-Bold="True"ForeColor="#333333"/>
<PagerStyleBackColor="#284775"ForeColor="White"HorizontalAlign="Center"/>
<HeaderStyleBackColor="#5D7B9D"Font-Bold="True"ForeColor="White"/>
<AlternatingRowStyleBackColor="White"ForeColor="#284775"/>
</asp:GridView>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>


GridViewUp.aspx.cs
文件代码:

usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;

publicpartialclassgridview_GridViewUp:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
GridViewBind();
}
}

protectedvoidGridView1_PageIndexChanging(objectsender,GridViewPageEventArgse)
{
GridView1.PageIndex=e.NewPageIndex;
GridViewBind();
}

privatevoidGridViewBind()
{
stringconnStr=ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
stringSqlStr="SELECT*,casexueliwhen'1'then'博士'when'2'then'硕士'when'3'then'学士'else''endasxueliTextFROMtest01whereid<1000andid>200";
DataSetds=
newDataSet();

try
{
SqlConnectionconn=
newSqlConnection(connStr);
if(conn.State.ToString()=="Closed")conn.Open();
SqlDataAdapterda=
newSqlDataAdapter(SqlStr,conn);
da.Fill(ds,"test01");
if(conn.State.ToString()=="Open")conn.Close();

GridView1.DataSource=ds.Tables[0].DefaultView;
GridView1.DataBind();
}
catch(Exceptionex)
{
Response.Write("
数据库错误,错误原因:"+ex.Message);
Response.End();
}
}

protectedvoidGridView1_RowDataBound(objectsender,GridViewRowEventArgse)
{
if(((DropDownList)e.Row.FindControl("DDLXueli"))!=null)
{
DropDownListddlxueli=(DropDownList)e.Row.FindControl("DDLXueli");

//生成DropDownList的值,也可以取得数据库中的数据绑定
ddlxueli.Items.Clear();
ddlxueli.Items.Add(
newListItem("博士","1"));
ddlxueli.Items.Add(
newListItem("硕士","2"));
ddlxueli.Items.Add(
newListItem("学士","3"));
//

//
选中DropDownList
ddlxueli.SelectedValue=((HiddenField)e.Row.FindControl("HDFXueli")).Value;
//
}
}

protectedvoidGridView1_RowEditing(objectsender,GridViewEditEventArgse)
{
GridView1.EditIndex=e.NewEditIndex;
GridViewBind();
}
protectedvoidGridView1_RowCancelingEdit(objectsender,GridViewCancelEditEventArgse)
{
GridView1.EditIndex=-1;
GridViewBind();
}

protectedvoidGridView1_RowUpdating(objectsender,GridViewUpdateEventArgse)
{
stringid=GridView1.DataKeys[e.RowIndex].Values[0].ToString();
stringcard=((TextBox)GridView1.Rows[e.RowIndex].FindControl("TBCard")).Text;
stringxueli=((DropDownList)GridView1.Rows[e.RowIndex].FindControl("DDLXueli")).SelectedValue;
stringprice=((TextBox)GridView1.Rows[e.RowIndex].FindControl("TBPrice")).Text;

stringconnStr=ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
stringSqlStr="updatetest01setcard='"+card+"',xueli='"+xueli+"',price='"+price+"'whereid="+id;

try
{
SqlConnectionconn=
newSqlConnection(connStr);
if(conn.State.ToString()=="Closed")conn.Open();
SqlCommandcomm=
newSqlCommand(SqlStr,conn);
comm.ExecuteNonQuery();
comm.Dispose();
if(conn.State.ToString()=="Open")conn.Close();

GridView1.EditIndex=-1;
GridViewBind();
}
catch(Exceptionex)
{
Response.Write("
数据库错误,错误原因:"+ex.Message);
Response.End();
}
}

protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse)
{
stringid=GridView1.DataKeys[e.RowIndex].Values[0].ToString();
stringconnStr=ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
stringSqlStr="deletefromtest01whereid="+id;

try
{
SqlConnectionconn=
newSqlConnection(connStr);
if(conn.State.ToString()=="Closed")conn.Open();
SqlCommandcomm=
newSqlCommand(SqlStr,conn);
comm.ExecuteNonQuery();
comm.Dispose();
if(conn.State.ToString()=="Open")conn.Close();

GridView1.EditIndex=-1;
GridViewBind();
}
catch(Exceptionex)
{
Response.Write("
数据库错误,错误原因:"+ex.Message);
Response.End();
}
}
}


sql server2000
生成表代码:

CREATETABLE[dbo].[test01](
[id][decimal](18,0)IDENTITY(1,1)NOTNULL,
[name][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[card][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[xueli][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[price][decimal](18,0)NULL,
[createdate][datetime]NULL
)
ON[PRIMARY]
GO

ALTERTABLE[dbo].[test01]ADD
CONSTRAINT[DF_test01_createdate]DEFAULT(getdate())FOR[createdate],
CONSTRAINT[PK_test01]PRIMARYKEYCLUSTERED
(
[id]
)
ON[PRIMARY]
GO

你可能感兴趣的:(UI,Web,SQL Server,asp,Go)