GridView 编辑、删除、【含有dropdownlist、fileupload、Image控件】

本文介绍了一个疾病信息管理系统的实现细节,包括使用ASP.NET进行界面设计、数据绑定及更新操作的方法。系统能够实现疾病信息的增删改查等功能,并通过GridView控件进行数据展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

鼠标放在第三行,背景颜色改变运行后的效果图点击编辑后的效果图
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;
using mmmLib.Disease;
public partial class Admin_DiseaseOutLine : System.Web.UI.Page
{
    DiseaseDetails disease 
= new DiseaseDetails();
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        
{
            BindData();
        }

    }

    
void BindData()
    
{
        
        
using (DataSet ds = (DataSet)disease.Execute("CommonSelect""table""select * from ForthClass order by ID Desc"))
        
{
            GridView1.DataSource 
= ds.Tables[0].DefaultView;
            GridView1.DataBind();
        }

    }

    
protected void GridView1_PageIndexChanged(object sender, EventArgs e)
    
{

    }

    
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    
{
        GridView1.PageIndex 
= e.NewPageIndex;
        BindData();
    }

    
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    
{
        GridView1.EditIndex 
= -1;
        BindData();
    }

    
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    
{
        
string did = GridView1.DataKeys[e.RowIndex].Value.ToString();
        
int fid=Convert.ToInt32(did);
        
try
        
{
            
if ((bool)disease.Execute("DeleteForthClass""int", fid))
            
{
                BindData();
            }

        }

        
catch (Exception ep)
        
{
            ClientScript.RegisterClientScriptBlock(
this.GetType(), "error", ManageClass._alert("数据库错误,错误原因:" + ep.Message));
            Response.End();
        }

    }

    
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    
{
        
int id = int.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());
        DropDownList ddl 
= (DropDownList)GridView1.Rows[e.RowIndex].FindControl("ddlks");
        
int tclassid = int.Parse(ddl.SelectedItem.Value);
        
string forthclassname = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox1")).Text;
        
string fullname = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox2")).Text;
        
string bodyposition = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox3")).Text;
        
string diseasetext = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox4")).Text;
        FileUpload fu 
= (FileUpload)GridView1.Rows[e.RowIndex].FindControl("imgupload");
        
string diseaseimg = null;
        
if (fu.HasFile)
        
{
            diseaseimg 
= Common.UpLoadFile(fu, "../120mdFile/");
        }

        
else
        
{
            diseaseimg 
= ((Image)GridView1.Rows[e.RowIndex].FindControl("Image2")).ImageUrl;
            
if (diseaseimg == null) diseaseimg = "";
        }

        
        
string diseasebiaoxian = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox7")).Text;
        
if (diseasebiaoxian == null) diseasebiaoxian = "";
        
try
        
{
            
if ((bool)disease.Execute("EditForthClass""int", id, tclassid, forthclassname, fullname, bodyposition, diseasetext, diseaseimg, diseasebiaoxian))
            
{
                ClientScript.RegisterClientScriptBlock(
this.GetType(), "ok", ManageClass._alert("数据已被保存!"));
            }

        }

        
catch
        
{
            ClientScript.RegisterClientScriptBlock(
this.GetType(), "ok", ManageClass._alert("未能保存记录!"));
        }

        
finally
        
{
            GridView1.EditIndex 
= -1;
            BindData();
        }

    }

    
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    
{
        GridViewRow row 
= GridView1.SelectedRow;
        row.BackColor 
= System.Drawing.Color.Crimson;
    }

    
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
    
{

    }

    
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    
{
        GridView1.EditIndex 
= e.NewEditIndex;
        GridView1.EditRowStyle.BackColor 
= System.Drawing.Color.FromName("#F7CE90");
        BindData();
    }

    
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    
{
        
//if ((DropDownList)e.Row.FindControl("ddlks") != null)
        
//{
        
//    DropDownList ddl = (DropDownList)e.Row.FindControl("ddlks");
        
//    ddl.Items.Clear();
        
//    ddl.DataSource = ((DataSet)disease.Execute("CommonSelect", "table", "select * from Tclass")).Tables[0].DefaultView;
        
//    ddl.DataTextField = "TclassName";
        
//    ddl.DataValueField = "ID";
        
//    ddl.DataBind();
        
//    ddl.SelectedValue = "";
        
//}//判定当前的行是否属于datarow类型的行
        if (e.Row.RowType == DataControlRowType.DataRow)
        
{
            e.Row.Attributes.Add(
"onmouseover""currentcolor=this.style.backgroundColor;this.style.backgroundColor='yellow',this.style.fontWeight='';");
            e.Row.Attributes.Add(
"onmouseout""this.style.backgroundColor=currentcolor,this.style.fontWeight='';");
            e.Row.Attributes.Add(
"onclick""this.style.backgroundColor='#99cc00'; this.style.color='buttontext';this.style.cursor='default';");
        }

    }

    
protected DataTable CreateSource()
    
{
        
return ((DataSet)disease.Execute("CommonSelect""table""select * from Tclass")).Tables[0];
    }

}

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DiseaseOutLine.aspx.cs" Inherits="Admin_DiseaseOutLine"%>

<!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 runat="server">
    
<title>无标题页</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:GridView ID="GridView1" runat="server" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" GridLines="Horizontal" AutoGenerateColumns="False" OnPageIndexChanged="GridView1_PageIndexChanged" OnPageIndexChanging="GridView1_PageIndexChanging" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowDataBound="GridView1_RowDataBound" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" OnSelectedIndexChanging="GridView1_SelectedIndexChanging" DataKeyNames="ID" AllowPaging="True" PageSize="15">
        
<FooterStyle BackColor="White" ForeColor="LightSteelBlue" />
        
<RowStyle BackColor="White" ForeColor="#333333" />
        
<PagerStyle BackColor="Red" ForeColor="White" HorizontalAlign="Center" />
        
<SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
        
<HeaderStyle BackColor="LightSteelBlue" Font-Bold="True" ForeColor="White" />
            
<Columns>
                
<asp:TemplateField HeaderText="序号">
                    
<ItemTemplate>
                        
<%# GridView1.PageIndex*GridView1.PageSize+GridView1.Rows.Count+1%>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="疾病名字">
                    
<EditItemTemplate>
                        
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("ForthClassName") %>'></asp:TextBox><asp:RequiredFieldValidator
                            
ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" ErrorMessage="请输入疾病名字"></asp:RequiredFieldValidator>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Label ID="Label1" runat="server" Text='<%# Bind("ForthClassName") %>'></asp:Label>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="疾病全名">
                    
<EditItemTemplate>
                        
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("FullName") %>'></asp:TextBox>
                        
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2"
                            ErrorMessage
="*"></asp:RequiredFieldValidator>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Label ID="Label2" runat="server" Text='<%# Bind("FullName") %>'></asp:Label>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="身体部位">
                    
<EditItemTemplate>
                        
<asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("BodyPosition") %>'></asp:TextBox>
                        
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="TextBox3"
                            ErrorMessage
="*"></asp:RequiredFieldValidator>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Label ID="Label3" runat="server" Text='<%# Bind("BodyPosition") %>'></asp:Label>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="疾病简介">
                    
<EditItemTemplate>
                        
<asp:TextBox ID="TextBox4" runat="server" Text='<%# Bind("DiseaseText") %>' TextMode="MultiLine"></asp:TextBox>
                        
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="TextBox4"
                            ErrorMessage
="*"></asp:RequiredFieldValidator>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Label ID="Label4" runat="server" Text='<%# Bind("DiseaseText") %>'></asp:Label>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="所属科室">
                    
<EditItemTemplate>
                        
                        
<asp:DropDownList ID="ddlks" runat="server" DataSource="<%# CreateSource() %>" DataValueField="ID" DataTextField="TClassName" SelectedValue='<%# Eval("TClassID") %>'>
                        
</asp:DropDownList>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:DropDownList ID="ddlks1" runat="server" DataSource="<%# CreateSource() %>" SelectedValue='<%# Eval("TClassID") %>' DataValueField="ID" DataTextField="TClassName">
                        
</asp:DropDownList>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="疾病图片">
                    
<EditItemTemplate>
                        
<asp:Image ID="Image2" runat="server" ImageUrl='<%# Bind("DiseaseImg") %>' />
                        
<asp:FileUpload ID="imgupload" runat="server" />(为空则不改变疾病图片)
                            
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Image ID="Image1" runat="server" ImageUrl='<%# Bind("DiseaseImg") %>' />
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="疾病表现">
                    
<EditItemTemplate>
                        
<asp:TextBox ID="TextBox7" runat="server" Text='<%# Bind("DiseaseBiaoxian") %>' TextMode="MultiLine"></asp:TextBox>
                        
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="TextBox7"
                            ErrorMessage
="*"></asp:RequiredFieldValidator>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:Label ID="Label7" runat="server" Text='<%# Bind("DiseaseBiaoxian") %>'></asp:Label>
                    
</ItemTemplate>
                
</asp:TemplateField>
                
<asp:TemplateField HeaderText="操作" ShowHeader="False">
                    
<EditItemTemplate>
                        
<asp:LinkButton ID="LinkButton5" runat="server" CausesValidation="True" CommandName="update">Update</asp:LinkButton>
                        
<asp:LinkButton ID="LinkButton4" runat="server" CausesValidation="False" CommandName="cancel">Cancel</asp:LinkButton>
                    
</EditItemTemplate>
                    
<ItemTemplate>
                        
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="edit" CausesValidation="false" OnClientClick="return confirm('确认要编辑吗?');">Edit</asp:LinkButton>
                        
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="delete" CausesValidation="False" OnClientClick="return confirm('确认要删除吗?');">Delete</asp:LinkButton>
                        
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="select" CausesValidation="False">Select</asp:LinkButton>
                    
</ItemTemplate>
                    
                
</asp:TemplateField>
            
</Columns>
        
<AlternatingRowStyle BackColor="Aquamarine" />
        
</asp:GridView>
    
</div>
    
</form>
</body>
</html>
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值