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. Android记录一个setTextColor常见的一个bug

    今天写代码 一不小心就犯了个错误. 细致检查才发现,仅记录一下,防止各位同学犯相同的错误哦 代码例如以下: remote.setTextColor(summaryId, R.color.news_ha ...

  2. innobackupex 备份实验

    [root@localhost ~]# xtrabackup -v xtrabackup version based Linux (x86_64) (revision id: 45cda89) [ro ...

  3. laravel 5.0 artisan 命令列表(中文简体)

    #php artisan list Laravel Framework version Usage: [options] command [arguments] Options(选项): --help ...

  4. linux上一些命令

    ps -ef看看有没有tomcat的进程:也可以用netstat -tnl来看tomcat的端口是否开放

  5. IOS 开发过程中的 消息通知 小红点

    大致分为两种方法:系统方法和自定义方法 系统方法: 系统自带的方法可以显示具体的消息数量,这个就是苹果设备常见的小红点.实现思路如下: NSArray *tabBarItems = self.navi ...

  6. solr 高亮配置

    solrj中配置: 两种高亮开启设置 // solrParams.setHighlight(true); solrParams.setParam("hl", "true& ...

  7. SOA与C#

    What is SOA? SOA or Service oriented architecture is an architecture style for building business app ...

  8. 【Shell脚本学习20】Shell until循环

    until 循环执行一系列命令直至条件为 true 时停止.until 循环与 while 循环在处理方式上刚好相反.一般while循环优于until循环,但在某些时候,也只是极少数情况下,until ...

  9. 精通C#(第6版)

    <精通C#(第6版)> 基本信息 原书名:Pro C# 5.0 and the .NET 4.5 framework,sixth edition 作者: (美)Andrew Troelse ...

  10. 剑指Offer23 二叉树中和为sum的路径

    /************************************************************************* > File Name: 23_FindPa ...