Connecting Tech Pros Worldwide Help | Site Map

How to fire server side events of Dynamic DataList control

  #1  
Old April 21st, 2009, 05:14 PM
Newbie
 
Join Date: Aug 2008
Location: hyderabad-india
Posts: 18
Hi All

This is my first query in this site. firstly i like to appreciate all the contributors of this site and solutions.

I am having an issue while using DataList dynamically. I am able to bind dynamic itemtemplate and dynamic linkbutton in that itemtemplate and displaying data and linkbuttons successfully. but i am not able to fire click event of the rendered linkbuttons even i registered the click event correctly.

also for the safe side i also registered ItemCommand event of DataList.

i have to achieve this task dynamically. there is no aspx or ascx code to be used i am using C# class file.

please revert back if you need any more information to solve my issue.

Your help is highly appricated.

Thanks
Raj
  #2  
Old April 21st, 2009, 05:33 PM
Frinavale's Avatar
Site Moderator
 
Join Date: Oct 2006
Location: The Great White North :)
Posts: 4,940
Provided Answers: 8

re: How to fire server side events of Dynamic DataList control


Welcome to the ASP.NET forum Raj :)

I'm glad you were finally able to post your question.

First of all, did you implement a method to handle the DataList's ItemCommand Event?

If not, try it, does this work?

If it doesn't work then it's likely that you have to bubble up the event in any custom item templates you have implemented.
  #3  
Old April 22nd, 2009, 05:57 AM
Newbie
 
Join Date: Aug 2008
Location: hyderabad-india
Posts: 18

re: How to fire server side events of Dynamic DataList control


Thank you, and because of you i am able to use BYTES.

Yes i am handling ItemCommand event.

Another thing i have to mention is..my appliation is implementation of custom webpart. so there are 2 classes that i am using in my program. 1 is class which implements webpart class and another class is which implements Itemplate for creating custom template.

i am rendering all controls in CreateChildControl( ) method. also i avoided postback problem that will cause problem for dynamic link buttons.

i am placing my logic that i implemented
Expand|Select|Wrap|Line Numbers
  1.  public class RelatedOrganizations : System.Web.UI.WebControls.WebParts.WebPart
  2.  {
  3.     //variables
  4.    DataList dataListTop;
  5.         DataList dataListBottom;
  6.  
  7.  //methods
  8.  protected override void CreateChildControls()
  9.         {
  10.            if (!Page.IsPostBack)
  11.               {
  12.  
  13.               //adding properties to my datalist
  14.   dataListBottom = new DataList();
  15.             dataListBottom.ItemCommand += new DataListCommandEventHandler(dataListBottom_ItemCommand);
  16.             dataListBottom.SelectedIndexChanged += new EventHandler(dataListBottom_SelectedIndexChanged);
  17.             TemplateField tfBottom = new TemplateField();
  18.             tfBottom.ItemTemplate = new GridViewTemplate(DataControlRowType.DataRow, strSalesPositionDescriptionColumn);
  19.             tfBottom.ItemTemplate = new GridViewTemplate(DataControlRowType.DataRow, strSalesPositionIdColumn);
  20.             dataListBottom.ItemTemplate = tfBottom.ItemTemplate;
  21.  
  22.     DataTable dt=getData();
  23.      dataListBottom.DataSource = dt;
  24.                 dataListBottom.DataBind();
  25.  
  26.               } //end of if
  27.  
  28.     }//end of method
  29.  
  30.  
  31.  //itemcommand event definition
  32.  void dataListBottom_ItemCommand(object source, DataListCommandEventArgs e)
  33.         {
  34.             dataListUpdate(e);
  35.         }
  36.  
  37. }//end of class
  38.  
  39. //here is my class for Itemplate with a linkbutton
  40. public class GridViewTemplate : ITemplate
  41.     {
  42.         private DataControlRowType templateType;
  43.         private string columnName;
  44.  
  45.         public GridViewTemplate(DataControlRowType type, string colname)
  46.         {
  47.             templateType = type;
  48.             columnName = colname;
  49.         }
  50.  
  51.         public void InstantiateIn(System.Web.UI.Control container)
  52.         {
  53.             // Create the content for the different row types.
  54.             switch (templateType)
  55.             {
  56.                 case DataControlRowType.Header:
  57.  
  58.                     break;
  59.                 case DataControlRowType.DataRow:
  60.                      LinkButton lnkbSPDesc = new LinkButton();
  61.                      lnkbSPDesc.DataBinding += new EventHandler(lnkbSPDesc_DataBinding);
  62.                     lnkbSPDesc.Click += new EventHandler(lnkbSPDesc_Click);
  63.                     container.Controls.Add(lnkbSPDesc);
  64.                     break;
  65.  
  66.  
  67.                 default:
  68.                       break;
  69.             }
  70.         }
  71.  
  72.         void lnkbSPDesc_Click(object sender, EventArgs e)
  73.         {
  74.             LinkButton lb = (LinkButton)sender;
  75.  
  76.         }
  77.  
  78.         void lnkbSPDesc_DataBinding(object sender, EventArgs e)
  79.         {
  80.  
  81.             LinkButton l = (LinkButton)sender;
  82.             //Label l = (Label)sender;
  83.  
  84.             DataListItem item = (DataListItem)l.NamingContainer;
  85.  
  86.  
  87.             POAICSharepointUtility.GetConfigKey("");
  88.             l.Text = DataBinder.Eval(item.DataItem, POAICSharepointUtility.GetConfigKey("SalesPositionDescriptionColumn")).ToString();
  89.             l.CommandArgument = DataBinder.Eval(item.DataItem, POAICSharepointUtility.GetConfigKey("SalesPositionIdColumn")).ToString();
  90.             l.CommandName = DataBinder.Eval(item.DataItem, POAICSharepointUtility.GetConfigKey("SalesPositionIdColumn")).ToString();
  91.             l.Click += new EventHandler(l_Click);
  92.         } //end of class
I hope this code will help you for understanding my problem.

looking for your reply.

thank you

Last edited by Frinavale; April 22nd, 2009 at 02:12 PM. Reason: Added code tags. Please post code in [code] [/code] tags.
  #4  
Old April 22nd, 2009, 01:10 PM
Newbie
 
Join Date: Aug 2008
Location: hyderabad-india
Posts: 18

re: How to fire server side events of Dynamic DataList control


Hi

I dont know what happend, but now my problem was solved. The datalist itemcommand event firing is working fine.

Thank you.
  #5  
Old April 22nd, 2009, 02:13 PM
Frinavale's Avatar
Site Moderator
 
Join Date: Oct 2006
Location: The Great White North :)
Posts: 4,940
Provided Answers: 8

re: How to fire server side events of Dynamic DataList control


I'm glad that you solved your problem.
Hopefully next time we'll actually be able to help you :)

-Frinny
  #6  
Old April 22nd, 2009, 07:14 PM
Newbie
 
Join Date: Aug 2008
Location: hyderabad-india
Posts: 18

re: How to fire server side events of Dynamic DataList control


Yes frinny. i hope the same.
  #7  
Old April 23rd, 2009, 05:04 AM
Newbie
 
Join Date: Aug 2008
Location: hyderabad-india
Posts: 18

re: How to fire server side events of Dynamic DataList control


Hi Frinny

I struck with a problem for Dyanamic Grid View. i am generating a dynamic gridview by custom ItemTemplate. every thing is working except the Page Size. my gridview it not showing records in page wise even i set page size property. where as it is showing all data in 1 page.

In my code, i am only considering ItemTemplate. i am not at all considering PageSetting or PageTemplate. but i am setting gridview's page size property.

the result i am getting is all data that i will give as source to gridview are getting populated on 1 page instead of n pages that i will get with respect to my page size value.

can you explain how i can get my data populate in several pages.
  #8  
Old April 23rd, 2009, 02:18 PM
Frinavale's Avatar
Site Moderator
 
Join Date: Oct 2006
Location: The Great White North :)
Posts: 4,940
Provided Answers: 8

re: How to fire server side events of Dynamic DataList control


It should work...
Did you set AllowPaging="true"?
Reply

Tags
datalist, dynamic linkbutton, event fire


Similar Threads
Thread Thread Starter Forum Replies Last Post
Download the JAVA , .NET and SQL Server interview with answers Jobs answers 2 September 26th, 2006 02:25 PM
Download the JAVA , .NET and SQL Server interview PDF Jobs answers 0 September 17th, 2006 02:05 PM