DataGrid Bind Checkbox
前台面页Menu_Config.ascx
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="Menu_Config.ascx.vb" Inherits="LiveWork.Menu_Confirg" %>
<table border="0" cellpadding="0" cellspacing="0" height="100%" style="width: 100%">
<tr>
<td valign="top">
<table border="1" bordercolor="#888888" bordercolordark="#ffffff" cellpadding="0"
cellspacing="0" width="100%">
<tr>
<td colspan="2" style="height: 14px" valign="top">
Role Information</td>
</tr>
</table>
<table border="1" bordercolor="#888888" bordercolordark="#ffffff" cellpadding="0"
cellspacing="0" width="100%">
<tr>
<td style="width: 3201px; height: 11px" valign="top">
<asp:Label ID="Label_Role" runat="server" Text="Role" Width="90px"></asp:Label>
<asp:DropDownList ID="DropDownList_Role" runat="server" Width="183px" Height="27px">
</asp:DropDownList>
<asp:Button ID="Button_Retrieve" runat="server" OnClientClick="Retrieve_Click" Text="Retrieve" /></td>
<td style="width: 679px; height: 11px" valign="top">
<asp:HyperLink ID="HyperLink2" runat="server" Font-Size="X-Small" NavigateUrl="~/role.aspx"><img src="img/add.gif" border="0" align="absbottom"> New Role</asp:HyperLink></td>
</tr>
</table>
<table border="1" bordercolor="#888888" bordercolordark="#ffffff" cellpadding="0"
cellspacing="0" width="100%">
<tr>
<td style="width: 671px; height: 7px" valign="top">
</td>
</tr>
</table>
<table border="1" bordercolor="#888888" bordercolordark="#ffffff" cellpadding="0"
cellspacing="0" width="100%">
<tr>
<td style="width: 100%; height: 7px" valign="top">
<asp:DataGrid ID="DataGrid_MenuConfigList" runat="server" AutoGenerateColumns="False" BackColor="#F7F7F7"
BorderColor="#F7F7F7" BorderStyle="Solid" BorderWidth="1px" CssClass="table"
DataKeyField="Menu_ID" Font-Size="X-Small" Width="100%">
<FooterStyle CssClass="headcenter" />
<EditItemStyle BackColor="Black" ForeColor="Black" Width="100%" />
<SelectedItemStyle BackColor="Transparent" />
<AlternatingItemStyle BackColor="White" BorderColor="White" />
<ItemStyle BackColor="#DEDFDE" CssClass="textcenter" />
<HeaderStyle CssClass="headcenter" />
<Columns>
<asp:TemplateColumn HeaderText="Choice ALL">
<HeaderTemplate>
<asp:CheckBox id="CheckBox_All" runat="server" Text="ALL" OnCheckedChanged="CheckAll" AutoPostBack="True"></asp:CheckBox>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox id="CheckBox_Role" runat="server"></asp:CheckBox>
</ItemTemplate>
<HeaderStyle Width="10px" />
</asp:TemplateColumn>
<asp:BoundColumn DataField="Role_Name"HeaderText="Role">
<HeaderStyle Width="60px" />
</asp:BoundColumn>
<asp:BoundColumn DataField="Menu_ID" HeaderText="Menu ID">
<HeaderStyle Width="0px" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" />
</asp:BoundColumn>
<asp:BoundColumn DataField="Menu_Name" HeaderText="Menu name">
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="Permissions">
<ItemTemplate>
<asp:DropDownList ID="DropDownList_Flag" runat="server" Width=160></asp:DropDownList>
</ItemTemplate>
<HeaderStyle Width="160px" />
</asp:TemplateColumn>
</Columns>
</asp:DataGrid></td>
</tr>
</table>
</td>
</tr>
</table>
后台代码
Namespace LiveWork
Partial Class Menu_Confirg
Inherits System.Web.UI.UserControl
Sub InitializeComponent()
AddHandler Me.Load, AddressOf Me.Page_Load
End Sub
Private Sub BindRole()
Dim sql As String
sql = "select * from tb_role where status='A' "
Me.DropDownList_Role.DataSource = Live.Ado.ADOProxy.GetRowsByQuery(sql)
Me.DropDownList_Role.DataTextField = "Role_Name"
Me.DropDownList_Role.DataValueField = "Role_ID"
Me.DropDownList_Role.SelectedIndex = 0
Me.DropDownList_Role.DataBind()
End Sub
Private Sub BindFlag()
Dim ds As DataSet = Live.Ado.ADOProxy.GetAllRows("TB_Flag")
For Each lobj_dgi As DataGridItem In Me.DataGrid_MenuConfigList.Items
Dim dl As DropDownList = CType(lobj_dgi.FindControl("DropDownList_Flag"), DropDownList)
dl.DataSource = ds
dl.DataTextField = "Flag_Name"
dl.DataValueField = "Flag_ID"
dl.DataBind()
Next
End Sub
Private Sub MenuConfig(ByVal lstg_role_id As String)
Dim sql As New System.Text.StringBuilder
sql.Append("(select a.role_id,c.role_name,b.menu_id,b.menu_name,a.flag_id,d.flag_name ")
sql.Append("from tb_role_menu a,tb_menu b,tb_role c,tb_flag d ")
sql.Append("where a.role_id=c.role_id ")
sql.Append("and a.menu_id = b.menu_id ")
sql.Append("and a.flag_id = d.flag_id ")
sql.Append("and a.status ='A' ")
sql.Append("and a.role_id='" & lstg_role_id & "')")
sql.Append("union all ")
sql.Append("( ")
sql.Append("select role_id='-',role_name='-',menu_id,menu_name,flag_id='-',flag='-' ")
sql.Append("from tb_menu ")
sql.Append("where menu_id not in ")
sql.Append("(select menu_id from tb_role_menu ")
sql.Append("where role_id ='" & lstg_role_id & "') ")
sql.Append(") ")
Dim ds As DataSet = Live.Ado.ADOProxy.GetRowsByQuery(sql.ToString)
Me.DataGrid_MenuConfigList.DataSource = ds
Me.DataGrid_MenuConfigList.DataBind()
End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
BindRole()
'MenuConfig(Me.DropDownList_Role.SelectedValue)
End If
End Sub
Protected Sub CheckAll(ByVal sender As Object, ByVal e As System.EventArgs)
Dim sql As String
sql = "select * from tb_role where role_id='" & Me.DropDownList_Role.SelectedValue & "' and status='A'"
Dim lobj_cb As CheckBox = CType(sender, CheckBox)
Dim ds As DataSet = Live.Ado.ADOProxy.GetRowsByQuery(sql)
For Each lobj_dgi As DataGridItem In Me.DataGrid_MenuConfigList.Items
Dim cb As CheckBox = CType(lobj_dgi.FindControl("CheckBox_Role"), CheckBox)
cb.Checked = lobj_cb.Checked
Next
End Sub
Private Function GetRoleMenuFlag(ByVal lstg_menu_id As String) As DataSet
Dim sql As String
sql = "select a.Flag_ID,b.Flag_Name from tb_role_menu a,tb_flag b where role_id='" & Me.DropDownList_Role.SelectedValue & "' and a.flag_id=b.flag_id and status='A'"
Dim ds As DataSet = Live.Ado.ADOProxy.GetRowsByQuery(sql)
Return ds
End Function
Protected Sub CheckRoleMenu()
For Each lobj_dgi As DataGridItem In Me.DataGrid_MenuConfigList.Items
If lobj_dgi.Cells(1).Text <> "-" Then
Dim cb As CheckBox = CType(lobj_dgi.FindControl("CheckBox_Role"), CheckBox)
cb.Checked = True
Dim dl As DropDownList = CType(lobj_dgi.FindControl("DropDownList_Flag"), DropDownList)
dl.SelectedValue = GetRoleMenuFlag(lobj_dgi.Cells(2).Text).Tables(0).Rows(0).Item("flag_id").ToString
End If
Next
End Sub
'Protected Sub Button_Retrieve_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button_Retrieve.Click
' MenuConfig(Me.DropDownList_Role.SelectedValue)
' BindFlag()
' CheckRoleMenu()
'End Sub
Protected Sub Retrieve_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button_Retrieve.Click
MenuConfig(Me.DropDownList_Role.SelectedValue)
BindFlag()
CheckRoleMenu()
End Sub
End Class
End Namespace
Note:
Result:
DataGrid Bind Checkbox....相关推荐
- [收藏]为DataGrid添加CheckBox控件
作者:孟宪会 出自:[孟宪会之精彩世界] 发布日期:2003年5月23日 8点26分11秒 为DataGrid添加CheckBox控件,并实现"全选"功能.这里是实现的例子 VB. ...
- 【转帖】如何通过 javascript 访问 GridView/DataGrid 选中 CheckBox 行各列的值
功能需求 1, 单击 checkbox 返回当前行值 2, 外部按钮获取所有选择行的值 实现说明 参见主要代码,代码为自说明式. 原文地址:http://www.cnblogs.com/Jingl ...
- datagrid加checkbox实现分页不丢失选择的记录 (转)
namespace checkboc_page { /// <summary> /// WebForm1 的摘要说明. /// </summary> public cl ...
- DataGrid添加CheckBox(下拉列表)
DataGrid中如何添加下拉列表呢?如下是实现的代码: DataGrid中的列 <mx:DataGridColumn headerText="状态" dataField=& ...
- 用js 判断datagrid 中的 checkbox 是否被选中
private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 ...
- jQuery EasyUI DataGrid Checkbox 数据设定与取值
纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...
- datagrid资料+ by iCeSnaker - Program rhapsody
datagrid资料+ by iCeSnaker - Program rhapsody 关于datagrid的打印 http://www.chinaaspx.com/article/csharp/29 ...
- asp.net MVC的EF与easyui DataGrid数据绑定
页面代码 @{Layout = null; }<!DOCTYPE html><html> <head><meta name="viewport&qu ...
- DataGrid 功能实现收集(一)
DataGrid相邻行有相同内容时对指定列合并 /// <summary> /// DataGrid相邻行有相同内容时对指定列合并 /// </summary> /// < ...
- DataGrid 功能实现收集(转)保留做参考
DataGrid相邻行有相同内容时对指定列合并 /**//// <summary> /// DataGrid相邻行有相同内容时对指定列合并 /// </summary> /// ...
最新文章
- 王振的开发板_Android
- mysql分页与分页性能查询优化
- java ec_Java ECKey.setK方法代码示例
- html任务清单源码,JavaScript jQuery 任务清单 ToDoList
- DM368开发 --IPNC 设置过程
- android密码dakay,安卓中按钮点击事件onClick的两种实现方式
- 递归算法题解析:设m,n均为自然数,m可表示为一些不超过n的自然数之和,f(m,n)为这种表示方式的数目
- 1.0jpa 2.0_在JPA 2.1中使用@Convert正确完成映射枚举
- dat文件导入cad画图步骤_Cad小技巧——表格文件如何导入至CAD
- 虚拟化部署ESXI6.7+intel x710-da4万兆网卡
- 001云E办项目之创建项目
- win10重置网络命令_WIN10重置网络的操作方法
- pnpm monorepo的技术选型临界点(Critical adoption)
- 微信小程序基于mpvue的ui组件之选择器
- 国内食品品牌策划公司排名,食品品牌设计公司哪家好?2021最新
- 在前端培训班内该如何学习入门
- Oracle体系结构VI
- 怎么系统有效的自学CAD?
- 如何快速将十进制转化为二进制
- 转换文件格式的时候总是没有反应
热门文章
- 域名服务器有什么作用?怎么查询域名服务器地址?
- Chia命令行P图工具
- Ambisonics解释:声音工程师指南
- win10计算机管理中没有本地用户和组怎么办?
- 如何在PPT中设置选择题
- BZOJ 1122 [POI2008]账本BBB 神题
- WRF users guide Chap5
- 零基础学大数据难吗?
- Java 判断IP地址为内网IP还是公网IP (针对IPv地址)
- 嗯,我是一个偏执狂。