Solved

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

Posted on 2008-10-24
3
840 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
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

Salesforce Has Never Been Easier

Improve and reinforce salesforce training & adoption using WalkMe's digital adoption platform. Start saving on costly employee training by creating fast intuitive Walk-Thrus for Salesforce. Claim your Free Account Now

Question has a verified solution.

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

Suggested Solutions

New Relic: Our company recently started researching several products to figure out what were the best ways for us to increase our web page speed and to quickly identify performance problems that we may be having. One of the products we evaluated wa…
Developer tools in browsers have been around for a while, yet they are still heavily underused by developers. Developers still fix html or CSS then refresh page to see effect, or they put alert or debugger in JavaScript and then try again and again …
This video teaches users how to migrate an existing Wordpress website to a new domain.
Learn how to set-up custom confirmation messages to users who complete your Wufoo form. Include inputs from fields in your form, webpage redirects, and more with Wufoo’s confirmation options.

734 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