《拓文asp.net网站内容管理系统》官方演示站。
 设为首页  
 收藏本站
 作者:黄振安
 QQ:53854651
首 页 开源拓文.NET编程网站编程网页设计图形图像数据库软件工程留言本
    站内搜索:  
您现在的位置: 拓文网络 → .NET编程 → ASP.NET → XML、DataSet、DataGrid结合写成广告管理程序(二)[正文]

热 门 文 章

相 关 文 章
  • ASP.NET性能优化
  • 在.NET框架应用程序中发送电子邮件
  • .net打包自动安装数据库
  • asp.net开发wap必备:更好的匹配手机设备
  • 用ashx动态生成文件
  • windows 2003下asp.Net站点无法使用用户名+密码的方
  • ASP.NET中17种正则表达式
  • 提高ASP.Net应用程序性能的十大方法
  • 一个通过web.Mail发送邮件的类
  • 在DataGrid里面根据日期的不同显示new图标
  • XML、DataSet、DataGrid结合写成广告管理程序(二)
     
    [作者:不详    转贴自:不详    点击数:    更新时间:2006-3-2 15:51:08]

     

    源代码如下:

    <% @ Page Language="C#" ResponseEncoding="gb2312" %>
    <% @ Import Namespace="System.Data" %>
    <% @ Import Namespace="System.Xml" %>
    <% @ Import Namespace="System.IO" %>
    <Script Language="C#" Runat="Server">
    DataSet ds;        //定义公用的DataSet
    DataView dv;  //定义公用的DataView
    string SortField;
    string sPath;
    public void Page_Load(Object src,EventArgs e)
    {
        if(State["adxml"]==null)
        {
            sPath = Server.MapPath(".") + "\\AdBanners\\ad_gb.xml";
            ds = new DataSet();
            ds.ReadXml(sPath);
            State["adxml"] = ds;
        }
        else
        {
            ds = (DataSet)State["adxml"];
        }
        dv = ds.Tables[0].DefaultView;
        dv.Sort = "ImageUrl";

        if(!Page.IsPostBack)
        {
            CreateTable();
        }
    }

    //捆绑Binder
    public void CreateTable()
    {

        dgXML.DataSource = dv;
        dgXML.DataBind();
    }

    //翻页时
    public void dgXML_Changed(Object sender,DataGridPageChangedEventArgs e)
    {
        CreateTable();
    }

    //删除
    public void DelItem(Object sender,DataGridCommandEventArgs e)
    {
        if(((LinkButton)e.CommandSource).CommandName == "del")
        {
            //首先取得当前更新页的行数与CurrentPageIndex
            int CPI = (int)dgXML.CurrentPageIndex;
            int EII = (int)e.Item.ItemIndex;
            int row = CPI*5+EII;

            lb.Text = row.ToString();

            //删除
            dv.Delete(row);

            dgXML.EditItemIndex = -1;
            ds.WriteXml(sPath);

            CreateTable();
        }
    }

    //取消
    public void dgXML_Cancel(Object sender,DataGridCommandEventArgs e)
    {
        dgXML.EditItemIndex = -1;
        CreateTable();
    }

    //编辑
    public void dgXML_Edit(Object sender,DataGridCommandEventArgs e)
    {
        dgXML.EditItemIndex = (int)e.Item.ItemIndex;
        CreateTable();
    }

    //更新
    public void dgXML_Update(Object sender, DataGridCommandEventArgs e)
    {
        try
        {
            //首先取得当前更新页的行数与CurrentPageIndex
            int CPI = (int)dgXML.CurrentPageIndex;
            int EII = (int)e.Item.ItemIndex;
            int row = CPI*5+EII;
            //lb.Text = row.ToString();

            //取得各项值

            string ImageUrl         = ((TextBox)e.Item.Cells[2].Controls[0]).Text;
            string NavigateUrl        = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
            string AlternateText  = ((TextBox)e.Item.Cells[4].Controls[0]).Text;
            string Keyword        = ((TextBox)e.Item.Cells[5].Controls[0]).Text;
            string Impressions        = ((TextBox)e.Item.Cells[6].Controls[0]).Text;

            dv.Delete(row);

            DataRow dr = ds.Tables[0].NewRow();
            dr[0] =    ImageUrl;
            dr[1] =    NavigateUrl;
            dr[2] =    AlternateText;
            dr[3] =    Keyword;
            dr[4] =    Impressions;
            ds.Tables[0].Rows.Add(dr);
            ds.WriteXml(sPath);
        }
        catch(Exception ee)
        {
            lb.Text = ee.ToString();
        }

        dgXML.EditItemIndex = -1;
        CreateTable();


    }

    public void PanelShow(Object sender,EventArgs e)
    {
        AddItem.Visible = true;
    }

    public void AddItem_Click(Object sender,EventArgs e)
    {
        DataRow dr = ds.Tables[0].NewRow();
        dr[0] =    mUrl.Text;
        dr[1] =    aUrl.Text;
        dr[2] =    mText.Text;
        dr[3] =    aKey.Text;
        dr[4] =    aTime.Text;
        ds.Tables[0].Rows.Add(dr);
        ds.WriteXml(sPath);
        CreateTable();
        AddItem.Visible=false;
    }
    </script>
    <html>
    <head>
    <title></title>
    </head>
    <body>
    <form id="form1" runat="server">
    <asp:DataGrid id="dgXML" runat="server"
    AllowPaging="True"
    PageSize="10"
    BorderColor="black"
    BorderWidth="1"
    CellPadding="3"
    Font-Name="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    PagerStyle-Mode="NumericPages"
    PagerStyle-HorizontalAlign="Right"
    PagerStyle-PrevPageText="前页"
    PagerStyle-NextPageText="后页"
    OnPageIndexChanged="dgXML_Changed"
    OnEditCommand="dgXML_Edit"
    OnCancelCommand="dgXML_Cancel"
    OnUpdateCommand="dgXML_Update"
    OnItemCommand="DelItem"
    AutoGenerateColumns="false"
    >
    <property name="Columns">
        <asp:ButtonColumn HeaderText="删除" Text="删除" CommandName="del" />
       。糰sp:EditCommandColumn EditText="修改" CancelText="取消" UpdateText="更新" ItemStyle-Wrap="false" HeaderText="操作区" HeaderStyle-Wrap="false" />
        <asp:BoundColumn HeaderText="图片地址(相对)" SortField="ImageUrl" DataField="ImageUrl" />
        <asp:BoundColumn HeaderText="链接URL" SortField="NavigateUrl" DataField="NavigateUrl" />
        <asp:BoundColumn HeaderText="图片说明" SortField="AlternateText" DataField="AlternateText" />
        <asp:BoundColumn HeaderText="类别" SortField="Keyword" DataField="Keyword" />
        <asp:BoundColumn HeaderText="显示时间" SortField="Impressions" DataField="Impressions" />
    </property>
    </asp:DataGrid>
    <hr>
    <asp:Button id="vi" Text="添加新项" OnClick="PanelShow" runat="server"/>
    <br>
    <asp:Panel id="AddItem" runat="server" Visible="false">
    <table>
        <tr Bgcolor="#aaaadd"><td colspan=2>添加新的广告页面</td></tr>
        <tr>
            <td>广告图片URL:</td>
            <td><asp:TextBox id="mUrl" runat="server" Text="http://" /></td>
        </tr>
        <tr>
            <td>广告链接地址:</td>
            <td><asp:TextBox id="aUrl" runat="server" Text="http://" /></td>
        </tr>
        <tr>
            <td>图片说明:</td>
            <td><asp:TextBox id="mText" runat="server" /></td>
        </tr>
        <tr>
            <td>广告所属类别:</td>
            <td><asp:TextBox id="aKey" runat="server" /></td>
        </tr>
        <tr>
            <td>显示时间</td>
            <td><asp:TextBox id="aTime" runat="server" /></td>
        </tr>
        <tr><td>
       <asp:Button id="submit" Text="提交" OnClick="AddItem_Click" runat="server" /></td></tr>
    </table>
    </asp:Panel>
    <asp:Label id="lb" runat="server" />
    </form>
    </body>
    </html> 


    首页 | 1 | 尾页  共 1 页
     
    winner 打印本页 关闭窗口

         文 章 评 论
    评论人 查看该文章的评论 发表时间
       笔 名* : 0 50分 60分 70分 80分 90分 100分
    评论内容 *: (最多1000字。当前字数:0)


    没有相关评论,欢迎您参与!

    - 关于本站 - 网站帮助 - 下载声明 - 友情连接 - 网站地图 -
    Copyright © 2005-2006 myTopWin.Com. All Rights Reserved . [桂ICP备06004496号]