<table>
<tr>
<td colspan="5">请选择试卷制定人员<span style="color:red">(选一人即可)</span>:</td>
</tr>
<tr>
<td style="width:50px;">姓名:</td>
<td style="width:80px;"><asp:TextBox ID="txtemployee" runat="server" Width="80px" ></asp:TextBox></td>
<td style="width:50px;">部门:</td>
<td style="width:120px;"><asp:TextBox ID="txtdepartment" runat="server" Width="120px" ></asp:TextBox></td>
<td style="text-align:left"><asp:Button ID="btnquery" runat="server" Text="查询" Width="80px" OnClick="btnquery_Click" /></td>
</tr>
<tr>
<td colspan="5">
<div style="height: 200px; overflow-y: scroll;width:500px;border:1px solid #808080;">
<asp:GridView ID="EmployeeGrid" runat="server" AutoGenerateColumns="False" Width="480px" BorderColor="#ffffff" BorderStyle="None" BorderWidth="0px" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="WorkNumber" HeaderText="工号" HeaderStyle-HorizontalAlign="Left" SortExpression="WorkNumber" />
<asp:BoundField DataField="EmployeeName" HeaderText="姓名" HeaderStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ChineseName" HeaderText="部门" HeaderStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="JobName" HeaderStyle-Width="130px" HeaderText="岗位" HeaderStyle-HorizontalAlign="Left" />
</Columns>
</asp:GridView>
</div>
</td>
<td style="width: 120px;padding-left:50px">
<asp:Button Text=" ==> " runat="server" ID="addWorker" OnClick="addWorker_Click" BorderStyle="None" /><br />
<br />
<asp:Button Text=" <== " runat="server" ID="deleteWorker" BorderStyle="None" OnClick="deleteWorker_Click" /><br />
<br />
</td>
<td>
<div style="height:200px;overflow-y:scroll;border:1px solid #808080;width:500px">
已选人员:
<asp:GridView ID="selectedGrid" runat="server" AutoGenerateColumns="False" style="width:480px;" BorderColor="#ffffff" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="WorkNumber" HeaderText="工号" SortExpression="WorkNumber" HeaderStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="EmployeeName" HeaderText="姓名" HeaderStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="ChineseName" HeaderText="部门" HeaderStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="JobName" HeaderStyle-Width="130px" HeaderText="岗位" HeaderStyle-HorizontalAlign="Left" />
</Columns>
</asp:GridView></div>
</td>
</tr>
</table>

protected void addWorker_Click(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add(new DataColumn("WorkNumber"));
table.Columns.Add(new DataColumn("EmployeeName"));
table.Columns.Add(new DataColumn("ChineseName"));
table.Columns.Add(new DataColumn("JobName"));
foreach (GridViewRow row in selectedGrid.Rows)
{
DataRow sourseRow = table.NewRow();
sourseRow["WorkNumber"] = row.Cells[1].Text;
sourseRow["EmployeeName"] = row.Cells[2].Text;
sourseRow["ChineseName"] = row.Cells[3].Text;
sourseRow["JobName"] = row.Cells[4].Text;
table.Rows.Add(sourseRow);
}
int rowCount = this.EmployeeGrid.Rows.Count;
for (int i = 0; i < rowCount; i++)
{
CheckBox tempChk = (CheckBox)EmployeeGrid.Rows[i].FindControl("CheckBox1");
if (tempChk.Checked == true)
{
DataRow sourseRow = table.NewRow();
sourseRow["WorkNumber"] = EmployeeGrid.Rows[i].Cells[1].Text;
sourseRow["EmployeeName"] = EmployeeGrid.Rows[i].Cells[2].Text;
sourseRow["ChineseName"] = EmployeeGrid.Rows[i].Cells[3].Text;
sourseRow["JobName"] = EmployeeGrid.Rows[i].Cells[4].Text;
table.Rows.Add(sourseRow);
((CheckBox)EmployeeGrid.Rows[i].FindControl("CheckBox1")).Checked = false;
break;
}
}
this.selectedGrid.DataSource = table;
this.selectedGrid.DataBind();
}
protected void deleteWorker_Click(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add(new DataColumn("WorkNumber"));
table.Columns.Add(new DataColumn("EmployeeName"));
table.Columns.Add(new DataColumn("ChineseName"));
table.Columns.Add(new DataColumn("JobName"));
foreach (GridViewRow row in selectedGrid.Rows)
{
DataRow sourseRow = table.NewRow();
sourseRow["WorkNumber"] = row.Cells[1].Text;
sourseRow["EmployeeName"] = row.Cells[2].Text;
sourseRow["ChineseName"] = row.Cells[3].Text;
sourseRow["JobName"] = row.Cells[4].Text;
table.Rows.Add(sourseRow);
}
foreach (GridViewRow row in selectedGrid.Rows)
{
if (((CheckBox)row.Cells[0].FindControl("CheckBox1")).Checked)
{
foreach (DataRow dtRow in table.Rows)
{
if (dtRow["WorkNumber"].ToString() == row.Cells[1].Text)
{
table.Rows.Remove(dtRow);
break;
}
}
}
}
selectedGrid.DataSource = table;
selectedGrid.DataBind();
}
//初始化员工信息
public void InitWorkers(string workername, string department)
{
SqlConnection Conn = new SqlConnection(ConfigurationManager.ConnectionStrings["LogInConnectionString"].ConnectionString);
Conn.Open();
string strSQL = "select * from (";
strSQL += "select ROW_NUMBER() over(order by EmployeeName) as xuhao, e.WorkNumber,e.EmployeeName,p.ChineseName,j.JobName from PUB_Employee e join ";
strSQL += " PUB_FrameworkRelation f on f.RelationID=e.EmployeeCode ";
strSQL += " join PUB_Post p on p.ID=e.PostID ";
strSQL += " join PUB_Job j on j.ID=e.JobID ";
strSQL += " where f.CancelState=0 ";
strSQL += " ) source where 1=1 ";
if (!string.IsNullOrEmpty(workername))
{
strSQL += " and source.EmployeeName like '%" + workername + "%'";
}
if (!string.IsNullOrEmpty(department))
{
strSQL += " and source.ChineseName like '%" + department + "%'";
}
SqlDataAdapter da = new SqlDataAdapter(strSQL.ToString(), Conn);
//实例化 DataSet 数据集 这个数据集会绑定在gridview上
DataSet data = new DataSet();
//向数据集中fill(填入)数据 da填入data
da.Fill(data, "table");
//将填好数据的数据集data 绑定到gridView空间上
this.EmployeeGrid.DataSource = data;
this.EmployeeGrid.DataBind();
}
protected void btnquery_Click(object sender, EventArgs e)
{
InitWorkers(txtemployee.Text, txtdepartment.Text);
}

asp gridview的更多相关文章

  1. asp gridview批量删除和全选

    本人新手刚学asp.net   全选和删除也是引用了他人的代码试了一试可以实现,感觉很好,就发了上来. 前台代码 <asp:GridView ID="GridView1" r ...

  2. asp:ObjectDataSource+asp:GridView 实现真分页

    <asp:GridView ID="GridViewCacheManager" DataSourceID="OdsCacheManager" runat= ...

  3. asp:GridView控件的使用

    使用asp:GridView显示一个统计的表格 cs样式: <style>        table.gridview_m        {            border-colla ...

  4. asp Gridview绑定形式获取行号

    Gridview中使用<%# Container.DataItemIndex %>取得当前行的序号 而在Repeater控件中使用Container.ItemIndex取得当前行的序号 & ...

  5. asp:gridview 中显示日期格式

    boundfield中应该这样设置: <asp:BoundField HeaderText="发表时间" DataField="PostTime" Htm ...

  6. asp:GridView控件使用FindControl方法获取控件的问题

    一.使用带cells的指定列 e.Item.Cells[1].Controls[1]只指定第二列的第二个控件 二.不使用带cells的指定类e.Item.FindControl("ID&qu ...

  7. Asp.Net 操作XML文件的增删改查 利用GridView

    不废话,直接上如何利用Asp.NET操作XML文件,并对其属性进行修改,刚开始的时候,是打算使用JS来控制生成XML文件的,但是最后却是无法创建文件,读取文件则没有使用了 index.aspx 文件 ...

  8. asp.net(C#)读取文件夹和子文件夹下所有文件,绑定到GRIDVIEW并排序 .

    Asp部分: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyFiles ...

  9. Asp.net中导出Excel文档(Gridview)

    主要思路,通过GridView来导出文档. 新建一个Aspx页面,页面创建GridView控件,后台绑定好数据源.然后load中直接打印即可导出 前台的GridView <asp:GridVie ...

随机推荐

  1. 【原创】测试基础之http_load(1)简介、安装、使用

    http_load-09Mar2016官方:https://acme.com/software/http_load/ 一 简介 http_load - multiprocessing http tes ...

  2. [Linux]流媒体服务器概述

    二.何为流媒体与流式传输? 2.1 流媒体 「流媒体」是指采用「流式传输」的方式在Internet播放的媒体格式,流媒体最大的特点就是「边下边播」,常用的流媒体格式有FLV(使用FLASH作为视频播放 ...

  3. Day7--------------IP地址配置

    ifconfig 查看网卡 ifconfig eth0 查看网卡eth0 配置网络地址: 临时配置: ifconfig eth0 192.168.10.100 netmask 255.255.255. ...

  4. Java位运算符浅析

    在学习源码中,发现有大量使用位运算符,这样做的目的是为了节约内存开销和加快计算效率. 位运算符,这个”位”代表这什么? 位:二进制位简称“位”,是二进制记数系统中表示小于2的整数的符号,一般用1或 0 ...

  5. 机器学习之高斯混合模型及EM算法

    第一部分: 这篇讨论使用期望最大化算法(Expectation-Maximization)来进行密度估计(density estimation). 与k-means一样,给定的训练样本是,我们将隐含类 ...

  6. Confluence 6 升级你的许可证

    如果你修改了你的许可证(例如为你的许可证增加了更多的用户),或者从 Cloud 中整合到你本地,你需要更新你的许可证. 希望更新你的额许可证: 进入  > 基本配置(General Config ...

  7. ios消息机制

    ios消息机制介绍 ios 调用每一个方法的时候其实是走的ios的消息机制 举例介绍一下 创建一个Pserson类 有一个eat 对象方法 那么下面的代码可以用消息机制实现  导入消息头文件    # ...

  8. 页面初始化的js函数要放在最最最最最最最前边!否则没效果

    简单说一下这个情况,html的页面的各部分都是动态渲染的,所以头部的某些个样式调用函数需要在页面初始化的时候被加载,这个我也是知道的,结果后边代码敲着敲着,就把这个事儿给忘了,然后启动项目的时候,页面 ...

  9. 【深度学习】吴恩达网易公开课练习(class1 week3)

    知识点梳理 python工具使用: sklearn: 数据挖掘,数据分析工具,内置logistic回归 matplotlib: 做图工具,可绘制等高线等 绘制散点图: plt.scatter(X[0, ...

  10. laravel 5.6

    compact() 建立一个数组,包括变量名和它们的值 打印结果: starts_with() 函数判断给定的字符串的开头是否是指定值