Click here to Skip to main content
15,916,019 members
Home / Discussions / ASP.NET
   

ASP.NET

 
GeneralBinding listbox problem Pin
SreejithAchutan21-Nov-07 18:27
SreejithAchutan21-Nov-07 18:27 
GeneralRe: Binding listbox problem Pin
_AK_21-Nov-07 18:45
_AK_21-Nov-07 18:45 
QuestionFacing issues with user control events Pin
Blumen21-Nov-07 17:29
Blumen21-Nov-07 17:29 
AnswerRe: Facing issues with user control events Pin
Christian Graus21-Nov-07 17:53
protectorChristian Graus21-Nov-07 17:53 
GeneralRe: Facing issues with user control events Pin
Blumen21-Nov-07 21:54
Blumen21-Nov-07 21:54 
QuestionHow to Validate dates? Pin
irkahc21-Nov-07 17:26
irkahc21-Nov-07 17:26 
AnswerRe: How to Validate dates? Pin
_AK_21-Nov-07 17:31
_AK_21-Nov-07 17:31 
QuestionEnabling edit mode on nested datalist (Problem) Pin
ElCortez21-Nov-07 12:28
ElCortez21-Nov-07 12:28 
Hello Guys.

This is just about my first post on here.

My problem on which i need some help on is as follows:

I have no problem invoking the edititemtemplate on a (Not nested) datalist.

But once i try invoking it on a nested datalist nothing happens, i have assured
that my edit button event fires. But the edititemtemplate never gets rendered.

Below you'll find a snippet of my aspx file:

<asp:DataList
ID="HeadlinesDataList"
runat="server"
OnItemDataBound="HeadlinesDataList_ItemDataBound"
DataKeyField="headlineID"
OnEditCommand="HeadlinesDataList_EditCommand"
OnCancelCommand="HeadlinesDataList_CancelCommand"
OnUpdateCommand="HeadlinesDataList_UpdateCommand">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "headlineName") %>
<asp:LinkButton ID="EditHeadlineButton" runat="server" CommandName="Edit">[Edit]</asp:LinkButton><br />

!--Categories-->
<asp:DataList
ID="CategoriesDataList"
runat="server"
DataKeyField="categoryID"
OnEditCommand="CategoriesDataList_EditCommand">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "CategoryName") %>
<asp:LinkButton ID="EditCategoryButton" runat="server" CommandName="Edit">[Edit]</asp:LinkButton><br />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="CategoryName" runat="server" Text='<%# DataBinder.Eval Container.DataItem, "categoryName") %>'></asp:TextBox>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="Cancel">[Cancel]</asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="Update">[Update]</asp:LinkButton>
</EditItemTemplate>
</asp:DataList>
<!--/Categories-->
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="HeadLineName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "headlineName") %>'></asp:TextBox>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="Cancel">[Cancel]</asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="Update">[Update]</asp:LinkButton>
</EditItemTemplate>
</asp:DataList>
<!--/Headlines-->

And here you'll see my code file for the aspx, My edit button on the nested datalist invokes this method:
CategoriesDataList_EditCommand
------------------------
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class showHeadlines : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
HeadLinesDatabind();
}
}

public void HeadLinesDatabind()
{
dbHeadlines myHeadlines = new dbHeadlines(ConfigurationManager.AppSettings.Get("ConnectionString"));

HeadlinesDataList.DataSource = myHeadlines.getheadlines(Request.QueryString.Get("structuretemplateid"));
HeadlinesDataList.DataBind();
}

public void CategoriesDatabind()
{

}

protected void HeadlinesDataList_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
dbCategories myCategories = new dbCategories( ConfigurationManager.AppSettings.Get("ConnectionString") );

System.Data.OleDb.OleDbDataReader myCategoriesReader = myCategories.getcategories(HeadlinesDataList.DataKeys[e.Item.ItemIndex].ToString());

((DataList)e.Item.FindControl("CategoriesDataList")).DataSource = myCategoriesReader;
((DataList)e.Item.FindControl("CategoriesDataList")).DataBind();

myCategoriesReader.Close();
}
}


protected void HeadlinesDataList_EditCommand(object source, DataListCommandEventArgs e)
{
//((DataList)source).EditItemIndex = e.Item.ItemIndex; // Works
HeadlinesDataList.EditItemIndex = e.Item.ItemIndex; // Works too
HeadLinesDatabind();
}


protected void CategoriesDataList_EditCommand(object source, DataListCommandEventArgs e)
{
// First attempt
DataList myCategoriesDatalist = (DataList)source; // Does not work
myCategoriesDatalist.EditItemIndex = e.Item.ItemIndex; // Does not work

// Second attempt
// ((DataList)source).EditItemIndex = e.Item.ItemIndex; // Does not work

// Third attempt
//((DataList)HeadlinesDataList.FindControl("CategoriesDataList")).EditItemIndex = e.Item.ItemIndex; // Does not work

HeadLinesDatabind();

}

protected void HeadlinesDataList_CancelCommand(object source, DataListCommandEventArgs e)
{
HeadlinesDataList.EditItemIndex = -1;
HeadLinesDatabind();
}

protected void HeadlinesDataList_UpdateCommand(object source, DataListCommandEventArgs e)
{
System.Web.UI.WebControls.TextBox HeadLineName = ((TextBox)e.Item.FindControl("HeadLineName"));

dbHeadlines myHeadlines = new dbHeadlines(ConfigurationManager.AppSettings.Get("ConnectionString"));
// myHeadlines.UpdateHeadlineName((int)HeadlinesDataList.DataKeys[e.Item.ItemIndex], ((TextBox)e.Item.FindControl("TextBox1")).Text);
myHeadlines.UpdateHeadlineName((int)HeadlinesDataList.DataKeys[e.Item.ItemIndex], HeadLineName.Text);
HeadLinesDatabind();
}
}


Okay i hope somebody can give me some help.. I'm just about to give up on this.

BTW: I'm coding in Visual Web Developer 2005 Express Edition.

Venlig hilsen / Regards

Steffen Otto Jensen
(Denmark)
QuestionHow do a call a local dll from Asp.net Pin
colmanwel21-Nov-07 11:59
colmanwel21-Nov-07 11:59 
AnswerRe: How do a call a local dll from Asp.net Pin
Michael Sync21-Nov-07 15:29
Michael Sync21-Nov-07 15:29 
QuestionCan I set a field Value in a loading ASPX page? Pin
IssamK21-Nov-07 10:42
professionalIssamK21-Nov-07 10:42 
AnswerRe: Can I set a field Value in a loading ASPX page? Pin
SABhatti21-Nov-07 11:00
SABhatti21-Nov-07 11:00 
AnswerRe: Can I set a field Value in a loading ASPX page? Pin
pmarfleet21-Nov-07 11:02
pmarfleet21-Nov-07 11:02 
GeneralRe: Can I set a field Value in a loading ASPX page? Pin
IssamK21-Nov-07 11:12
professionalIssamK21-Nov-07 11:12 
AnswerRe: Can I set a field Value in a loading ASPX page? Pin
SABhatti21-Nov-07 12:51
SABhatti21-Nov-07 12:51 
Questionhow to display table column data are starting letter in capital letter Pin
Murugan.nett21-Nov-07 8:22
Murugan.nett21-Nov-07 8:22 
AnswerRe: how to display table column data are starting letter in capital letter Pin
SABhatti21-Nov-07 8:51
SABhatti21-Nov-07 8:51 
AnswerRe: how to display table column data are starting letter in capital letter Pin
Frank Kerrigan21-Nov-07 10:07
Frank Kerrigan21-Nov-07 10:07 
AnswerRe: how to display table column data are starting letter in capital letter Pin
IssamK21-Nov-07 10:56
professionalIssamK21-Nov-07 10:56 
QuestionDatabind Image control inside a repeater Pin
Paul McGann21-Nov-07 7:08
professionalPaul McGann21-Nov-07 7:08 
AnswerRe: Databind Image control inside a repeater Pin
SABhatti21-Nov-07 8:13
SABhatti21-Nov-07 8:13 
QuestionToo many literals in the string.. Pin
Ibuprofen21-Nov-07 5:07
Ibuprofen21-Nov-07 5:07 
AnswerRe: Too many literals in the string.. Pin
Pete O'Hanlon21-Nov-07 5:09
mvePete O'Hanlon21-Nov-07 5:09 
GeneralRe: Too many literals in the string.. Pin
Ibuprofen21-Nov-07 5:13
Ibuprofen21-Nov-07 5:13 
GeneralRe: Too many literals in the string.. Pin
Pete O'Hanlon21-Nov-07 9:25
mvePete O'Hanlon21-Nov-07 9:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.