不要使用DataGrid.SelectedItem使用CheckBox放在第一列,Post回来之后,判断每一行的CheckBox是否选中来确定该行是否被选定

解决方案 »

  1.   

    不会吧,BOSS非要你有DataGrid?换个控件不行吗?
      

  2.   

    http://www.metabuilders.com/Tools/RowSelectorColumn.aspx
      

  3.   

    要同时选中吗? 反正也不能同时处理两行阿 , 用个checkbox应该可以
      

  4.   

    你用模板,----checkbox ,就可以实现多选。。是否选中要在后台判断。
    <ItemStyle HorizontalAlign="Center"></ItemStyle>
    <HeaderStyle HorizontalAlign="Center" BackColor="#DDDDD5"></HeaderStyle>
    <Columns>
    <asp:TemplateColumn HeaderText="选择">
    <ItemTemplate>
    <asp:CheckBox id="CheckBox1" runat="server"></asp:CheckBox>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  5.   

    不是,是为了同时删除!但是没有CHECKBOX,老板说加了不好看!
      

  6.   

    建议使用绑定列(单选:OPTION,复选:CHECKBOX)
    代码:
    <asp:TemplateColumn HeaderText="操作">
    <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
    <ItemStyle Wrap="False" Width="40px"></ItemStyle>
    <ItemTemplate>
    <asp:CheckBox Runat="server" Text="" id="Chk" EnableViewState="true"></asp:CheckBox>
    </ItemTemplate>
    </asp:TemplateColumn>VB:
        Private BlnChk(10) As Boolean
        Private StrSelid(10) As String
    '假设每页十行
            If GridUser.Items.Count > 0 Then
                For i = 0 To GridUser.Items.Count - 1
                    BlnChk(i) = CType(GridUser.Items(i).FindControl("chk"), CheckBox).Checked
                    StrSelid(i) = CStr(GridUser.Items(i).Cells(1).Text)
                Next
                If i < 9 Then
                    For i = GridUser.Items.Count To 9
                        BlnChk(i) = False
                        StrSelid(i) = ""
                    Next
                End If
            End If
      

  7.   

    删除条件就是,选中了的就可以删除!(就象按住CTRL键,进行多选!再按DEL将选中的全部删除!
      

  8.   

    使用JS编程,综合使用Ctrl键或者Shift键选择,然后获取条件值即可删除。
      

  9.   

    你老板是个BT 。。
    SBT。。
      

  10.   

    我这样做过,就是点一行中的任何地方,就选种这个记录, 选中后在点, 取消选择, 单选多选都可以.其实我个人还是偏向使用checkbox, 简单,容易使用, 符合大众习惯, 也不喜欢这种界面方式, 但也是被人所逼 :(.
    代码很长, 客户端服务端都比较多.
      

  11.   

    其实你可以加一个Checkbox,但是你可以将它设为不可见,然后当选中末一行的时候你程序里面讲那个Checkbox给选中,反正就是一个标识码。我没做过,不过我想可以,这是一个折衷的方法
      

  12.   

    kenfil(kenfil) ,能不能把你的代码传给我看看!BOSS现在就是这个要求!谢谢!都是出来混口饭吃的兄弟!帮帮忙那!
      

  13.   

    Please tell me your email address and I'll send it to you.
    Those code is too large to post here.
      

  14.   

    OK,谢谢!我的油箱是[email protected]
      

  15.   

    或者可以用模板列,添加一个<DIV>点中时存储选中列的ID到数组中,如果重复选中则从数组中删除。按删除时就全部DEL掉选中的列
      

  16.   

    kevinhit(城市獵人) ( 的建议不错,可以采用,你实施