您的位置:首页 > 其它

Repeater 的操作,数据的显示,绑定,动态取控件中的值和Repeater1_ItemCommand事件的相关用法

2011-11-28 17:00 423 查看
HTML Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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:Repeater ID="Repeater1" runat="server" 
            onitemcommand="Repeater1_ItemCommand">
        <HeaderTemplate><table border=1  width=500></HeaderTemplate>
        <ItemTemplate>
         <tr><td>昵称:<br></br><%# Eval("name") %></td><td>这是[<%# Eval("name") %>]帅哥于[<%# Eval("date") %>]给你的留言</td></tr>
          <tr><td rowspan="6"><img alt="Pic" src='<%# Eval("pic") %>' /></td><td></td></tr>
         <tr><td><%# Eval("title") %><br /><%# Eval("msg") %><br/><hr color="red"/></td><td></td></tr>
         <tr><td rowspan="3"><%# Convert.ToBoolean(Eval("status"))?"管理员回复你的:<br/>"+Eval("answermsg"): "正在等待管理员答复……"%></td><td></td></tr>
         <tr><td></td><td></td></tr>
         <tr><td></td><td></td></tr>
         <tr><td></td><td></td></tr>
         <tr><td></td><td><asp:TextBox runat="server" ID="TextBox1" TextMode=MultiLine Height=50 ></asp:TextBox></td></tr>
         <tr><td></td><td><asp:LinkButton ID="link" CommandName="1" CommandArgument=<%# Eval("id") %> Text="发关电邮" runat="server"></asp:LinkButton>   <asp:LinkButton ID="LinkButton1"   CommandArgument=<%# Eval("id") %> Text="删除留言"  CommandName="2"  runat="server"></asp:LinkButton>   <asp:LinkButton ID="LinkButton2"   CommandArgument=<%# Eval("id") %> CommandName="3"  Text="回复" runat="server"></asp:LinkButton></td></tr>
   
            </ItemTemplate>

        <FooterTemplate></table></FooterTemplate>

        </asp:Repeater>
    
    </div>
    <asp:HiddenField ID="HiddenField1" runat="server" />
    </form>
</body>
</html>
C# Code
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Net.Mail;using System.Net;using System.Text;public partial class _Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)        {             string str = ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;         using (SqlConnection con=new SqlConnection(str))        {            using (SqlCommand cmd=new SqlCommand("select * from oper",con))            {                DataSet ds = new DataSet();                using (SqlDataAdapter sda=new SqlDataAdapter(cmd))                {                    sda.Fill(ds);                }                Repeater1.DataSource = ds;                Repeater1.DataBind();            }        }          }              }    protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)    {              //  Response.Write(Repeater1.Items[]);   //     Response.Write( e.Item.ItemIndex.ToString());               string str = ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;        if (e.CommandName == "1")        {            TextBox tb = (TextBox)Repeater1.Items[e.Item.ItemIndex].FindControl("TextBox1");            string msg = "";            if (tb != null)            {                msg = tb.Text;            }            if (msg.Length == 0)            {                using (SqlConnection con = new SqlConnection(str))                {                    using (SqlCommand cmd = new SqlCommand("select answermsg from oper", con))                    {                        DataSet ds = new DataSet();                        using (SqlDataAdapter sdsa = new SqlDataAdapter(cmd))                        {                            sdsa.Fill(ds);                        }                        msg = ds.Tables[0].Rows[0][0].ToString();                    }                }            }            System.Net.Mail.SmtpClient client = new SmtpClient("smtp.qq.com");            client.UseDefaultCredentials = false;            client.Credentials = new System.Net.NetworkCredential("979170768@qq.com", "BAINING1111");            client.DeliveryMethod = SmtpDeliveryMethod.Network;            System.Net.Mail.MailMessage message = new MailMessage("979170768@qq.com", "979170768@qq.com", "管理员发回复了你的问题", msg);            message.BodyEncoding = System.Text.Encoding.UTF8;            message.IsBodyHtml = true;            client.Send(message);        }        else if (e.CommandName == "2")        {            using (SqlConnection con = new SqlConnection(str))            {                using (SqlCommand cmd = new SqlCommand("delete from oper where id=@id", con))                {                    cmd.Parameters.Add("@id", e.CommandArgument.ToString());                    con.Open();                    cmd.ExecuteNonQuery();                    Server.Transfer("Default.aspx");                }            }        }        else if (e.CommandName == "3")        {            using (SqlConnection con = new SqlConnection(str))            {                using (SqlCommand cmd = new SqlCommand("update oper set answermsg=@msg,answerdate=@date,status=1 where id=@id", con))                {                    TextBox tb = (TextBox)Repeater1.Items[e.Item.ItemIndex].FindControl("TextBox1");                    string msg = "";                    if (tb != null)                    {                        //Response.Write(tb.Text);                        msg = tb.Text;                    }                    cmd.Parameters.Add("@id", e.CommandArgument.ToString());                    cmd.Parameters.Add("@msg", msg);                    cmd.Parameters.Add("@date", System.DateTime.Now.ToString());                    con.Open();                    //TextBox delete = (Button)r.Items[0].FindControl("btnDelete");                    cmd.ExecuteNonQuery();                    Server.Transfer("Default.aspx");                    //foreach (RepeaterItem item in Repeater1.Controls)                    //{                    //    if (item.ItemType == .Item)                    //    {                    //        item.FindControl("TextBox1").Visible = true;                    //        break;                    //    }                    //}                 }            }        }    }}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐