Solved

Adding delete link for multiple item in a cell in Repeater control

Posted on 2008-10-24
3
839 Views
Last Modified: 2012-05-05
Hi,

I have a repeater control with following headings with sample data.

GroupName  Add Subject   SubjectName
----------------------------------------------------
Group1      Add Subject             subject1
                   Subject2
                   Subject3




When User Clicks on "Add Subject" I get the subject from the database for the group name and shows that in
SubjectName column.

Now I want to add delete functionality for the subject. So how can I add delete functionality in my code behind code.

Here is sample data.

GroupName  Add Subject   SubjectName
----------------------------------------------------
Group1      Add Subject             subject1         Delete
                   Subject2         Delete      
                   Subject3         Delete

Group2      Add Subject             subject4         Delete
                   Subject5         Delete
                   Subject6         Delete


Here is my sample code for adding subject when user clicks "AddSubject".




Please help me with this.





------------------------------------------------------------------------------------------------------------
 
   protected void Repeater1_ItemCommand(object source, DataListCommandEventArgs e)
    {
        int rowIndex = e.Item.ItemIndex;
        HiddenField hfSelectedEventName = (HiddenField)((DataList)source).Items[rowIndex].FindControl("hfSelectedEventName");
        HiddenField hfSelectedEventId = (HiddenField)((DataList)source).Items[rowIndex].FindControl("hfSelectedEventId");
       
       if (e.CommandName == "btnAdd")  // btnAdd is a link button in my repeater control
       {
            ((Panel)((DataList)source).Items[rowIndex].FindControl("PanelEvents")).Visible = false;
            ((Literal)((DataList)source).Items[rowIndex].FindControl("literalSelectedEvent")).Visible= true;
            CheckBoxList cblEvents = (CheckBoxList)((DataList)source).Items[rowIndex].FindControl("cblEvents");
            
     
            Literal literalSelectedEvent = (Literal)((DataList)source).Items[rowIndex].FindControl("literalSelectedEvent");
            TextBox txtNewEvent = (TextBox)((DataList)source).Items[rowIndex].FindControl("txtNewEvent");   
            StringBuilder strEventData=new StringBuilder();
            string strSelectedEvents = string.Empty;
            string strSelecedEventIds = string.Empty;
            int i=1;
          foreach (ListItem subject in cblEvents.Items)
           {
                 
               if (item.Selected)
               {
                   if (!hfSelectedEventName.Value.Contains(subject.Text))//check for edit mode
                   {
                       strSelectedEvents += subject.Text + ",";
                       strSelecedEventIds += subject.Value + ",";
                       strEventData.Append("<div>" + subject.Text + "</div>");  // I want to add "delete" link here.
                         
                       i++;
                   }
               }
 
              
           }
          if (strSelectedEvents.Length > 1)
          {
              strSelectedEvents = strSelectedEvents.Substring(0, strSelectedEvents.Length - 1);
              strSelecedEventIds = strSelecedEventIds.Substring(0, strSelecedEventIds.Length - 1);
          }
 
          if (txtNewEvent.Text != string.Empty)
          {
           strSelectedEvents+=","+txtNewEvent.Text;
           strSelecedEventIds += ",0";
           strEventData.Append("<div>" + txtNewEvent.Text + "</div>");
               
                      
              txtNewEvent.ReadOnly=true;
          }
          if (strSelectedEvents != string.Empty)
          {
              hfSelectedEventName.Value = strSelectedEvents;
              hfSelectedEventId.Value = strSelecedEventIds;
              literalSelectedEvent.Text += strEventData.ToString();
          }
           
       }
   }
 
-----------------------------------------------------------------------------------------------------------------------------

Open in new window

0
Comment
Question by:r_pat72
3 Comments
 
LVL 16

Accepted Solution

by:
Gyanendra Singh earned 500 total points
ID: 22802024
use this
<ItemTemplate>
        <div style="float:left; padding:10px; text-align:center;">
           <asp:HyperLink OnClientClick="return confirm('Are you sure?');" ID="DeleteLink" runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "ImageId","yourpage.aspx?PropertyId="+Request.QueryString("yourID")") %>'  >Delete</asp:HyperLink>
        </div>
        </ItemTemplate>
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Foolproof security solutions has become one of the key necessities of every e-commerce or Internet banking website. If you too own an online shopping site then its vital for you to equip your web portal with customer security features that can allow…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
Wufoo.com provides powerful tools for surveying targeted groups, and utilizing data from completed surveys to find trends, discover areas of demand or customer expectation, and make business decisions on products or services.
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to choose which pages of your form are visible to your users based on their inputs. The page rules feature provides you with an opportunity to create if:then statements for y…

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question