DataGrid1
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的更多相关文章
- 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 ...
- 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇一:WPF常用知识以及本项目设计总结
篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...
- datepickerx设置默认日期
datepicher插件是jQuery UI的一个插件,它提供一个日期弹出窗口(或直接显示在页面),供用户选择日期.在Web开发中,总会遇到需要用户输入日期的情况.一般都是提供一个text类型的inp ...
- 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇三:批量处理后的txt文件入库处理
篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...
- 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇四:关于OneNote入库处理以及审核
篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...
- GridView/DataGrid行单击和双击事件实现代码_.Net教程
功能: 单击选中行,双击打开详细页面 说明:单击事件(onclick)使用了 setTimeout 延迟,根据实际需要修改延迟时间 ;当双击时,通过全局变量 dbl_click 来取消单击事件的响应 ...
- C# 3种方法连接MySql
转 http://wenku.baidu.com/view/d0cf34708e9951e79b8927c7.html C# 连接MYSQL数据库的方法及示例 连接MYSQL数据库的方法及示例 方 ...
- 【转】WPF防止界面卡死并显示加载中效果
原文地址:http://www.cnblogs.com/linyijia/archive/2013/02/06/2900609.html <Window x:Class="Loadin ...
- 【转】WPF DataGrid 获取选中的当前行某列值
方法一:DataRowView mySelectedElement = (DataRowView)dataGrid1.SelectedItem; string result = mySelectedE ...
随机推荐
- System.setProperty()
/* * 设置指定键对值的系统属性 * setProperty (String prop, String value); * * 參数: * prop - 系统属性的名称. * value ...
- IO 延迟与Queue Depth
IO 延迟:存储设备的IO延迟 Queue Depth:磁盘控制器所发出的批量指令的最大条数 IOPS:磁盘设备每秒的IO 三者之间的关系:IOPS=(Queue Depth)/(IO latenc ...
- LINUX HOOK
http://blog.csdn.net/yyttiao/article/details/7346287
- Docker学习笔记2
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...
- Java最重要的21个技术点和知识点之JAVA基础
(一)Java最重要的21个技术点和知识点之JAVA基础 写这篇文章的目的是想总结一下自己这么多年JAVA培训的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Ja ...
- Largest Rectangle in a Histogram 常用技巧 stack的运用
Largest Rectangle in a Histogram
- oracle 本地使用命令导入数据到远程主机
第一步:装载oracle客户端 第二部:配置tnsnames.ora. db_172.21.1.7 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST ...
- Cache的原理、设计及实现
Cache的原理.设计及实现 前言 虽然CPU主频的提升会带动系统性能的改善,但系统性能的提高不仅仅取决于CPU,还与系统架构.指令结构.信息在各个部件之间的传送速度及存储部件的存取速度等因素有关,特 ...
- Android 高级UI设计笔记21:Android SegmentView(分段选择控件)
1. 分段控制(SegmentView) 首先我们先看看什么是SegmentView的效果,如下: 分段控制这个View控件是ios7的分段控制,和QQ消息页面顶部的效果一样,android没有这个控 ...
- FormsAuthentication与Session超时时间不一的解决方法
因为FormsAuthentication 和 Session 的cookies不一样,造成了FormsAuthentication 还能进入,而 session已经超时的问题. 最好的办法就是当让F ...