2016-11-25 5 views
0

Ich habe Listenansicht mit Datenbank verknüpfen. Ich habe Kontrollkästchen in jeder Zeile, so möchte ich Benutzer bestimmte Zeile mit Kontrollkästchen auswählen &, die ausgewählte ID sollte zu einer anderen Seite analysieren & binden Listview dieser ID auf einer anderen Seite. Folgenden Code Ich habe versucht, ausgewählte Zeile aus page1 listview, aber ich habe keine Ahnung, wie ich es auf eine andere Seite analysieren & bind Listenansicht ausgewählter Zeilen.Ausgewählte ID von Listview von einer Seite zu einer anderen Seite analysieren & Listenansicht von dieser ausgewählten ID binden

List<string> ListItems = new List<string>(); 
foreach (void el_loopVariable in consignements.Items) { 
    el = el_loopVariable; 
    foreach (void item_loopVariable in el.Controls) { 
     item = item_loopVariable; 
     if (item is CheckBox) { 
      if (((CheckBox)item).Checked == true) { 
       ListItems.Add(((CheckBox)item).ToolTip); 
      } 
     } 
    } 
} 


<asp:ListView ID="consignements" runat="server" DataKeyNames="ID"> 
    <ItemTemplate> 
     <tr> 
      <td><asp:CheckBox ID="chk" runat="server" ToolTip='<%# Eval("ID") %>' /></td> 
      <td><asp:HyperLink ID="bookingID" runat="server" Text='<%# Eval("booking_ID") %>'></asp:HyperLink></td> 
      <td><%# Eval("DateOfBooking", "{0:MMM dd, yyyy}") %></td> 
      <td><%# Eval("consigner") %></td> 
      <td><%# Eval("consignee") %></td> 
      <td><%# Eval("origin") %></td> 
      <td><asp:Label ID="mode" runat="server" ToolTip='<%# Eval("mode") %>'></asp:Label></td> 
      <td><%# Eval("destination") %></td> 
      <td><%# Eval("payee") %></td> 
      <td><%# Eval("quantity") %></td> 
      <td><%# Eval("shipper") %></td> 
      <td><%# Eval("pod") %></td> 
      <td style="text-align:right"><%# Eval("refInvoiceNo") %></td> 
     </tr> 
    </ItemTemplate> 
</asp:ListView> 

Antwort

0

Zuerst ein Label auf dem Listview hinzufügen möchten, binden Sie die ID, um es als Text und legen Sie die Sichtbarkeit auf False. Sie können dies verwenden, um die ID an den dahinter liegenden Code zurückzugeben.

Und in Code hinter Sie können alle ListViewDataItems Schleife und die Steuerelemente.

protected void Button1_Click(object sender, EventArgs e) 
{ 
    List<string> ListItems = new List<string>(); 

    foreach (ListViewDataItem item in consignements.Items) 
    { 
     CheckBox checkBox = item.FindControl("chk") as CheckBox; 
     Label label = item.FindControl("Label1") as Label; 

     if (checkBox.Checked == true) 
     { 
      ListItems.Add(label.Text); 
     } 
    } 
} 
Verwandte Themen