GridView
来源:互联网 发布:文字表情制作软件 编辑:程序博客网 时间:2024/04/28 20:05
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Vote.aspx.cs" Inherits="Vote" %>
<!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 style="text-align:center; font-size:small;">
<asp:GridView ID="VoteItemManage" runat="server" AutoGenerateColumns="False" Width="760px" DataKeyNames="ItemID" OnRowCommand="VoteItemManage_RowCommand" OnRowCreated="VoteItemManage_RowCreated" OnRowDataBound="VoteItemManage_RowDataBound" OnRowCancelingEdit="VoteItemManage_RowCancelingEdit" OnRowDeleting="VoteItemManage_RowDeleting" OnRowEditing="VoteItemManage_RowEditing" OnRowUpdating="VoteItemManage_RowUpdating" ShowFooter="true">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:LinkButton ID="lkAddItem" runat="server" CausesValidation="False" CommandName="AddItem">新增</asp:LinkButton>
</HeaderTemplate>
<FooterTemplate>
<%# VoteItemManage.Rows.Count+1%>
</FooterTemplate>
<ItemTemplate>
<%# Container.DataItemIndex+1%>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="投票子选项">
<ItemStyle Width="30%" />
<EditItemTemplate>
<asp:TextBox ID="ItemTxt" runat="server" Text='<%# Bind("VoteContent")%>'> </asp:TextBox>
<asp:RequiredFieldValidator ID="rf_ItemTxt" runat="server" ControlToValidate="ItemTxt"
ErrorMessage="必填" ValidationGroup="EVC"></asp:RequiredFieldValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="ItemContent" runat="server" Text='<%# Bind("VoteContent")%>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="addItemTxt" Text='' runat="server" MaxLength="100"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="addItemTxt"
ErrorMessage="必填" ValidationGroup="IVC"></asp:RequiredFieldValidator>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="父选项">
<EditItemTemplate>
<asp:DropDownList ID="EditItem_father" runat="server">
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:DropDownList ID="EditItem_father" runat="server" Enabled="False">
</asp:DropDownList>
</ItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="EditItem_father" runat="server">
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<EditItemTemplate>
<asp:LinkButton ID="btn_update" runat="server" ValidationGroup="EVC">更新</asp:LinkButton>
<asp:LinkButton ID="btn_cancel" runat="server" CausesValidation="false">取消</asp:LinkButton>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="btn_Edit" runat="server" CommandName="Edit" CausesValidation="false">编辑</asp:LinkButton>
<asp:LinkButton ID="btn_Delete" runat="server" CommandName="Delete" CausesValidation="false">删除</asp:LinkButton>
</ItemTemplate>
<FooterTemplate>
<asp:LinkButton ID="lkbSure" runat="server" CommandName="ItemSure" ValidationGroup="IVC">确定</asp:LinkButton>
<asp:LinkButton ID="lkbSCancel" runat="server" CausesValidation="False" CommandName="ItemCancel">取消</asp:LinkButton>
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Button ID="addNewItem" runat="server" Text="新增" OnClick="addNewItem_Click" />
</div>
</form>
</body>
</html>
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;
public partial class Vote : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Bind();
}
}
private void Bind()
{
DB_Vote db_vote = new DB_Vote();
DataView dv = new DataView();
dv = db_vote.getDataSource("select * from VoteItem", "VoteItem").DefaultView;
VoteItemManage.DataSource = dv;
VoteItemManage.DataBind();
}
protected void VoteItemManage_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "AddItem")
{
VoteItemManage.ShowFooter = true;
}
if (e.CommandName == "ItemCancel")
{
VoteItemManage.ShowFooter = false;
}
if (e.CommandName == "ItemSure")//点新增状态下“确定”按钮
{
try
{
TextBox voteItem = VoteItemManage.FooterRow.FindControl("addItemTxt") as TextBox;
DropDownList fatherItem = VoteItemManage.FooterRow.FindControl("EditItem_father") as DropDownList;
int voteID = Convert.ToInt32(fatherItem.SelectedValue);
Vote_online v = new Vote_online();
v._VoteID = voteID;
v._VoteContent = voteItem.Text.Trim();
if (new DB_Vote().InsertNewItem(v))
{
VoteItemManage.ShowFooter = false;
Bind();
}
}
catch (Exception err)
{
Response.Write("错误原因:" + err.Message);
}
}
}
protected void VoteItemManage_RowCreated(object sender, GridViewRowEventArgs e)
{
ListItemType itemType = (ListItemType)e.Row.RowType;
if (itemType == ListItemType.Item || itemType == ListItemType.AlternatingItem)
{
if (VoteItemManage.EditIndex < 0)//说明是正常显示状态,为“删除”按钮添加属性
{
((LinkButton)e.Row.Cells[3].FindControl("btn_Delete")).Attributes.Add("onclick", "return confirm(/"确定要删除此记录吗?/");");
}
else//说明是编辑状态,为“取消”按钮添加属性
{
((LinkButton)e.Row.Cells[3].FindControl("btn_cancel")).Attributes.Add("onclick", "return confirm(/"确定要取消吗?/");");
}
}
}
protected void VoteItemManage_RowDataBound(object sender, GridViewRowEventArgs e)
{
if ((DropDownList)e.Row.FindControl("EditItem_father") != null)
{
DropDownList ddlxl = (DropDownList)e.Row.FindControl("EditItem_father");
ddlxl.Items.Clear();
ddlxl.DataSource = (new DB_Vote()).getDataSource("select * from [Vote]", "Vote").DefaultView;
ddlxl.DataTextField = "VoteItem";
ddlxl.DataValueField = "VoteID";
ddlxl.DataBind();
}
}
protected void VoteItemManage_RowEditing(object sender, GridViewEditEventArgs e)
{
VoteItemManage.EditIndex = e.NewEditIndex;
Bind();
}
protected void VoteItemManage_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
VoteItemManage.EditIndex = -1;
Bind();
}
protected void VoteItemManage_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string rowToDelete = VoteItemManage.DataKeys[e.RowIndex].Value.ToString();
int row_ToDelete = int.Parse(rowToDelete);
try
{
DB_Vote db_vote = new DB_Vote();
if (db_vote.Delete_VoteItem(row_ToDelete))
{
Bind();
}
}
catch (Exception error)
{
Response.Write("数据库错误,错误原因:" + error.Message);
}
}
protected void VoteItemManage_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string rowItemID = VoteItemManage.DataKeys[e.RowIndex].Value.ToString();
string rowItemContent = ((TextBox)VoteItemManage.Rows[e.RowIndex].FindControl("ItemTxt")).Text;
string rowVoteID = ((DropDownList)VoteItemManage.Rows[e.RowIndex].FindControl("EditItem_father")).SelectedValue;
int ItemID = Convert.ToInt32(rowItemID);
int VoteID = Convert.ToInt32(rowVoteID);
Vote_online v = new Vote_online();
v._ItemID = ItemID;
v._VoteID = VoteID;
v._VoteContent = rowItemContent;
DB_Vote db_vote = new DB_Vote();
try
{
if (db_vote.Edit_VoteItem(v))
{
VoteItemManage.EditIndex = -1;
Bind();
}
}
catch (Exception exc)
{
Response.Write("数据库错误,错误原因:" + exc.Message);
}
}
protected void addNewItem_Click(object sender, EventArgs e)
{
VoteItemManage.ShowFooter = true;
}
}
- GridView
- gridview
- GridView
- gridview
- GridView
- GridView
- gridview
- GridView
- GridView
- gridview
- GridView
- GridView
- Gridview
- GridView
- GridView
- gridview
- GridView
- GridView
- java学习小知识集锦2
- 睡觉想醒却醒不来
- 常用SQL:高级应用
- 解决linux下resin乱码之二
- NTFS in Fedora core6
- GridView
- ssh_exchange_identification: Connection closed by remote host
- Hello CSDN blog
- javascript验证Validator_js (摘)
- 读取中文文件的代码
- javascript的window.onload方法使用
- J2ME开发中常见属性(Property)及其作用列表
- What is a pure virtual function?--什么是纯虚函数
- 声明与函数、函数指针