THEONE

清风徐来,逆风飞翔-感受生活中的每一天
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ComponentOne-c1webgrid控件多选框实现

Posted on 2007-01-17 09:47  THEONE2008  阅读(1334)  评论(2编辑  收藏  举报

         ComponentOne.Studio.Enterprise是一套著名的真的对ASP.Net的控件库,而其中的C1WebGrid是其中的基本控件之一,也是使用范围最广的控件之一;而在表格控件中添加多选或单选控件,进行多选或单选是个非常主流的功能,下面根据我开发的经验对该功能做些使用说明。

         首先向webfrom窗体中添加C1WebGrid控件,设置好后,在C1WebGrid上单击鼠标右键,选择Property Builder,在Columns中添加TempLate Columns,添加后,即可单击C1WebGrid选择编辑模板了,在模板中添加CheckBox控件


 

      模板设计完成后,进入代码编写

      在前端写JS脚本,实现全选的功能,当然,也可以在后台实现,只要判断chkExport.Checked=False时候,在进行对chkExport.Checked=True就可以了

代码

        <script language="javascript">
        
<!--
        
//CheckBox全选And反全选
        function select_deselectAll (chkVal, idVal) 
        
{
        var frm 
= document.forms[0];
        
for (i=0; i<frm.length; i++
        
{
            
if (idVal.indexOf ('CheckAll'!= -1)
            
{
            
if(chkVal == true
            
{
            frm.elements[i].checked 
= true;
            }
 
            
else 
            
{
            frm.elements[i].checked 
= false;
            }

            }
 
            
else if (idVal.indexOf('DeleteThis'!= -1
            
{
            
if(frm.elements[i].checked == false
            
{
            frm.elements[
1].checked = false;
            }

            }

        }

        }

        
//-->
        </script>


后台代码,判断选择情况

    Private Sub Linkbutton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Linkbutton3.Click

        '======================================================================

        '   进行通审操作

        '   c1webgrid选中得数据进行循环,读取数据ID

        '   根据数据ID,进行审核操作

        '----------------------------------------------------------------------

        Dim chkExport As System.Web.UI.WebControls.CheckBox         '   定义checkbox

        Dim oExArgs As New System.Collections.ArrayList             '   定义数组

        Dim sID As String                                           '   装载数据ID

        Dim SelectID As String = ""                                 '   装载全部选定的数据ID

        Dim oDataGridItem As C1.Web.C1WebGrid.C1GridItem            '   定义C1WEBGRID的每一行

        Dim RaidNum As String                                       '   入库批次号

        Dim Amount As String                                        '   出库数量

        Dim strUpdate As String                                     '   出库更新SQL

        Dim OutYN As String                                         '   审核情况

        Dim db As New EPData

 

 

        For Each oDataGridItem In C1WEBGRID1.Items

            chkExport = oDataGridItem.FindControl("CheckBox2")

            If chkExport.Checked Then

                SelectID = ""

                sID = oDataGridItem.Cells(3).Text

                '--------------------------------------------

                oExArgs.Add(sID) 
                Dim i As Integer = 0

                For i = 0 To oExArgs.Count - 1

                    SelectID += oExArgs(i) + ","

                    '--------------------------------------------------

                    '   对出库记录进行更新(更新审核状态)

                    '   根据出库数,对入库进行调节(真实出库)

                    '--------------------------------------------------

                Next

            End If

        Next

        'Response.Write("<script>alert('通审完毕!审核单数:" & oExArgs.Count & " " & " ')</script>")

        TxtQuery.Text = SelectID & " 个数:" & oExArgs.Count

    End Sub

 

最后实现效果: