ASP.NET: CheckBox'ы в DataGrid

DmTs
Удалён за грубость
Posts: 5791
Joined: 15 Mar 1999 10:01
Location: с Родины

ASP.NET: CheckBox'ы в DataGrid

Post by DmTs »

Есть датагрид создаваемый динамически (ес-но)
Надо к нему подцепить сheckbox'ы и после нажатия кнопки узнать какие к примеру SystemID из базы были чекнуты..
(CheckBoxList использовать не предполагается - так как тогда вся таблицы не будет - там ведь как я понял список выборов и чекбокс у каждого. Или как это можно обойти?)
Не совсем понимаю, как это сделать..
Если я объявлю чекбоксы как:

Code: Select all

...
<asp:TemplateColumn>
       <ItemTemplate>
         <asp:CheckBox
           ID="checkDtgrd1"      
          runat = "server"/>
   </ItemTemplate>
</asp:TemplateColumn>
..
Куда тут можно (и можно ли ) всунуть уникальный идентификатор контрола(<%# Container.Dataitem("SystemID" %>)
и как потом после нажатия на кнопку и PostBack пробежаться по контролам и выбрать чекнутые?
"Имеешь одни часы - знаешь который час. Имеешь несколько - сомневаешься."
User avatar
katit
Уже с Приветом
Posts: 23804
Joined: 05 Jul 2003 22:34
Location: Брест -> St. Louis, MO

Re: ASP.NET: CheckBox'ы в DataGrid

Post by katit »

Не уверен или вам такое решение подойдет...

Просто вставьте checkbox name="mybox1" и т.д. в чистом HTML виде.
в этом случае если вы не пользуетесь viewstate то на первом postback просто можно Request.Form["mybox1"]

Наверняка можно и ASP.NET сделать, но как не знаю. Я использовал checkboxlist
Bobo
Уже с Приветом
Posts: 518
Joined: 04 Jun 2002 01:40
Location: CA, USA

Post by Bobo »

Code: Select all

<asp:TemplateColumn> 
       <ItemTemplate>
         <asp:CheckBox
           ID="checkDtgrd1"       
          runat = "server"/>
       <asp:Label ID="lblSystemID" Visible="False" Text="#<%databound%>"/>
   </ItemTemplate>
</asp:TemplateColumn>


foreach (DataGridItem i in Datagrid1.Items)
{
  CheckBox c = i.FindControl("checkDtgrd1")
  Label l = i.FindControl("lblSystemID")
....
}


Помогло?
DmTs
Удалён за грубость
Posts: 5791
Joined: 15 Mar 1999 10:01
Location: с Родины

Post by DmTs »

Bobo

Угу, я тоже вчера нашел это же решение c невидимой меткой.. только думал что это уж как то примитивно.. Оказывается нет. :)
"Имеешь одни часы - знаешь который час. Имеешь несколько - сомневаешься."

Return to “Вопросы и новости IT”