2013-09-2512:26:31

1.DataGrid页面

  <asp:DataGrid ID="msgInfo1" PageSize="8" AutoGenerateColumns="False" BorderWidth="0"
               CellPadding="0" CellSpacing="2" AllowPaging="True" Width="100%" DataKeyField="ID"
               runat="server" onpageindexchanged="msgInfo1_PageIndexChanged"
               onitemcommand="msgInfo1_ItemCommand" onitemdatabound="msgInfo1_ItemDataBound" >
         <ItemStyle HorizontalAlign="Center" CssClass="td1"></ItemStyle>
         <HeaderStyle HorizontalAlign="Center" BackColor="SkyBlue" ForeColor="White" CssClass="td2">
         </HeaderStyle>
         <Columns>
             <%--<asp:BoundColumn DataField="业务标题" HeaderText="标题">
             <ItemStyle Width="33%"></ItemStyle>
             </asp:BoundColumn>--%>
             <asp:TemplateColumn HeaderText="标题" ItemStyle-Width="33%">
               <ItemTemplate>
                   <asp:HyperLink ID="hy标题" runat="server"></asp:HyperLink>
               </ItemTemplate>
             </asp:TemplateColumn>

<asp:BoundColumn DataField="业务表名" HeaderText="分类">
                         <ItemStyle Width="33%"></ItemStyle>
             </asp:BoundColumn>
              <asp:TemplateColumn HeaderText="操作">
                      <%--<ItemStyle Width="10%"></ItemStyle>--%>
                     <ItemTemplate>
                     <asp:Button ID="btnEdit" runat="server" Text="置顶" class="button" Width="100px" CommandName="toTop"
                                     CommandArgument='<%#Eval("ID") %>' />
                    
<asp:Button ID="btnDelete" runat="server" Text="不公开" class="button"
Width="100px"CommandName="toNoPublish" CommandArgument='<%#Eval("ID")
%>' />
                      <%--<asp:ImageButton
ID="btnModify" Runat="server" CommandName="ToEdit"
AlternateText="点击进行编辑"
ImageUrl="~/images/i_edit.gif"></asp:ImageButton>
          
           <asp:ImageButton ID="btnDelete" Runat="server"
CommandName="ToDelete" ToolTip="点击删除当前项"
ImageUrl="~/images/i_delete.gif"></asp:ImageButton>--%>
                     </ItemTemplate>
                 </asp:TemplateColumn>
               </Columns>
        <PagerStyle Mode="NumericPages"></PagerStyle>
       </asp:DataGrid>

2.ItemDataBound实现a标签的链接,其中通过业务表名来进行类别筛选

  protected void msgInfo1_ItemDataBound(object sender, DataGridItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                DataRow row = ((DataRowView)e.Item.DataItem).Row;
                HyperLink hy标题 = e.Item.FindControl("hy标题") as HyperLink;
                hy标题.Text = row["业务标题"].ToString();
                string 编号 = string.Empty;
                if (row["业务表名"].ToString() == "工作案例")
                {
                    编号 = "1";
                }
                else if (row["业务表名"].ToString() == "工作笔记")
                {
                    编号 = "4";
                }
                else if (row["业务表名"].ToString() == "实事工作")
                {
                    编号 = "3";
                }
                else if (row["业务表名"].ToString() == "义工服务")
                {
                    编号 = "7";
                }
                if (Comm.获取数据(row["业务表名"].ToString(), "ID", row["业务ID"].ToString(), "1").Rows.Count > 0)
                {
                   
string 人员ID = Comm.获取数据(row["业务表名"].ToString(), "ID",
row["业务ID"].ToString(), "1").Rows[0]["人员ID"].ToString();

hy标题.NavigateUrl = "javascript:aa('" + 人员ID + "','" + 编号 + "');";
                }
            }

3.js(aa()方法)

  <script>
         function aa(id, type) {
             //alert(id);
            
window.open('qgy_ssgz.aspx?id=' + id + '&isView=1&OtherType=' +
type, '',
'target=_blank,scrollbars=yes,top=100,left=200,width=800,height=700,scrolling=1');
         }
        </script>

4.ItemCommand实现DataGrid中的Button控件

  protected void msgInfo1_ItemCommand(object source, DataGridCommandEventArgs e)
        {
            if (e.CommandName == "toTop")
            {
               Publishcs.置顶已公布信息(e.CommandArgument.ToString());
               BindData(txt标题.Text.Trim());
            }
            else if (e.CommandName == "toNoPublish")
            {
                string 表名 = Comm.获取数据("已公布信息表","ID",e.CommandArgument.ToString(),"1").Rows[0]["业务表名"].ToString();
                Publishcs.不公布已公布信息(e.CommandArgument.ToString(), 表名,string.Empty);
                BindData(txt标题.Text.Trim());
            }         
        }

5.PageIndexChanged实现页面的切换

  protected void msgInfo1_PageIndexChanged(object source, DataGridPageChangedEventArgs e)
        {
            msgInfo1.CurrentPageIndex = e.NewPageIndex;          
            BindData("");
        }

6.实现绑定

  protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BindData("");
            }
        }
        protected void BindData(string 标题)
        {           
            msgInfo1.DataSource = Publishcs.获取已发布列表(标题);
            msgInfo1.DataBind();            
        }

7.本列中是通过存储过程来实现对数据的获取

  创建Publishcs.cs类,写获取已发布列表(标题).

  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  using System.Data;
  using System.Data.SqlClient;

  namespace Business
  {
      public class Publishcs
      {        
          /// <summary>
          /// 已发布类
          /// </summary>
          /// <returns></returns>
          private static SqlConnection GetConn()
          {
           
  SqlConnection conn = new
 SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["CNHRConnectionStrings"].ConnectionString);
              return conn;
          }

   public static DataTable 获取已发布列表(string 标题)
          {
              SqlConnection conn = GetConn();
              try
              {
                  conn.Open();
                  SqlCommand cmd = new SqlCommand("已发布列表获取", conn);
                  cmd.CommandType = CommandType.StoredProcedure;

  SqlParameter para1 = new SqlParameter("@标题", SqlDbType.NVarChar);
                  para1.Value = 标题;
                  cmd.Parameters.Add(para1);

   //SqlParameter para2 = new SqlParameter("@分类", SqlDbType.NVarChar);
                  //para2.Value = 分类;
                  //cmd.Parameters.Add(para2);

  DataTable dt = new DataTable();
                  SqlDataAdapter sda = new SqlDataAdapter(cmd);
                  sda.Fill(dt);
                  return dt;
              }
             finally
              {
                  conn.Close();
              }
          }

   public static int 置顶已公布信息(string ID)
          {
              SqlConnection conn = GetConn();
              try
              {
                  conn.Open();
                  SqlCommand cmd = new SqlCommand("已公布信息置顶", conn);
                  cmd.CommandType = CommandType.StoredProcedure;

  SqlParameter para1 = new SqlParameter("@ID", SqlDbType.UniqueIdentifier);
                  para1.Value = new Guid(ID);
                  cmd.Parameters.Add(para1);
                
                  return cmd.ExecuteNonQuery();
              }
              finally
              {
                 conn.Close();
              }
          }

  public static int 不公布已公布信息(string 已公布信息ID, string 表名, string 业务ID)
          {
              SqlConnection conn = GetConn();
              try
              {
                  conn.Open();
                  SqlCommand cmd = new SqlCommand("将已公布信息变为不公布", conn);
                  cmd.CommandType = CommandType.StoredProcedure;

   SqlParameter para1 = new SqlParameter("@已公布信息ID", SqlDbType.UniqueIdentifier);
                  para1.Value = string.IsNullOrEmpty(已公布信息ID) ? Guid.Empty : new Guid(已公布信息ID);
                  cmd.Parameters.Add(para1);

    SqlParameter para2 = new SqlParameter("@表名", SqlDbType.NVarChar);
                  para2.Value = 表名;
                  cmd.Parameters.Add(para2);

    SqlParameter para3 = new SqlParameter("@业务ID", SqlDbType.UniqueIdentifier);
                  para3.Value = string.IsNullOrEmpty(业务ID) ? Guid.Empty : new Guid(业务ID);
                  cmd.Parameters.Add(para3);

   return cmd.ExecuteNonQuery();
              }
              catch (Exception ex)
              {
                  throw new Exception(ex.Message);
              }
              finally
              {
                  conn.Close();
              }
          }
      }
  }

DataGrid1的更多相关文章

  1. miniui中可以设置是否让页面进行分页 <div id="datagrid1" class="mini-datagrid" style="width:100%" allowAlternating="true" showpager="true"/> 就是设置showpager属性为true

    <div id="datagrid1" class="mini-datagrid" style="width:100%" allowA ...

  2. 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇一:WPF常用知识以及本项目设计总结

    篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...

  3. datepickerx设置默认日期

    datepicher插件是jQuery UI的一个插件,它提供一个日期弹出窗口(或直接显示在页面),供用户选择日期.在Web开发中,总会遇到需要用户输入日期的情况.一般都是提供一个text类型的inp ...

  4. 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇三:批量处理后的txt文件入库处理

    篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...

  5. 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇四:关于OneNote入库处理以及审核

    篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...

  6. GridView/DataGrid行单击和双击事件实现代码_.Net教程

    功能: 单击选中行,双击打开详细页面 说明:单击事件(onclick)使用了 setTimeout 延迟,根据实际需要修改延迟时间 ;当双击时,通过全局变量 dbl_click 来取消单击事件的响应  ...

  7. C# 3种方法连接MySql

    转   http://wenku.baidu.com/view/d0cf34708e9951e79b8927c7.html C# 连接MYSQL数据库的方法及示例 连接MYSQL数据库的方法及示例 方 ...

  8. 【转】WPF防止界面卡死并显示加载中效果

    原文地址:http://www.cnblogs.com/linyijia/archive/2013/02/06/2900609.html <Window x:Class="Loadin ...

  9. 【转】WPF DataGrid 获取选中的当前行某列值

    方法一:DataRowView mySelectedElement = (DataRowView)dataGrid1.SelectedItem; string result = mySelectedE ...

随机推荐

  1. excel VLOOKUP函数的用法

    VLOOKUP函数是Excel中几个最重函数之中的一个,为了方便大家学习,兰色幻想特针对VLOOKUP函数的使用和扩展应用,进行一次全面综合的说明.本文为入门部分 一.入门级 VLOOKUP是一个查找 ...

  2. 如何使用strace+pstack利器分析程序性能

    http://www.cnblogs.com/bangerlee/archive/2012/04/30/2476190.html

  3. Linux用户空间与内核空间(理解高端内存)

    Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数 ...

  4. 【PHP代码审计】 那些年我们一起挖掘SQL注入 - 3.全局防护Bypass之Base64Decode

    0x01 背景 现在的WEB程序基本都有对SQL注入的全局过滤,像PHP开启了GPC或者在全局文件common.php上使用addslashes()函数对接收的参数进行过滤,尤其是单引号.同上一篇,我 ...

  5. GCC 编译选项(转)

    转:http://www.cnblogs.com/xmphoenix/archive/2011/03/21/1989944.html gcc提供了大量的警告选项,对代码中可能存在的问题提出警 告,通常 ...

  6. linux 关闭显示器命令

    首先要解释下DPMS的意思,dpms可以认为是一个显示能源管理系统,一般用于计算机功耗的管理.在linux中有几个选项:To control Energy Star (DPMS) features:  ...

  7. Java再学习——随机面试题

    1.final, finally, finalize的区别 final—是修饰符,可以修饰变量.方法和类. final类不能再派生出新的子类即不可当父类: final变量必须在声明时给定初值或在构造方 ...

  8. hadoop2 作业执行过程之作业提交

    hadoop2.2.0.centos6.5 hadoop任务的提交常用的两种,一种是测试常用的IDE远程提交,另一种就是生产上用的客户端命令行提交 通用的任务程序提交步骤为: 1.将程序打成jar包: ...

  9. Handsontable 学习笔记-Methods

    Handson: 亲自实践 先给出数据源和基本配置: var data =[ ["A1","B1","C1","D1"] ...

  10. 【Mood 16 】史上最全github使用方法:github入门到精通

    [初识Github] 首先让我们大家一起喊一句“Hello Github”.YEAH!就是这样. Git 是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管 ...