I have a DataList control that I am expanding when an item is selected, using the SelectedItemTemplate. No problem!
The problem is when I want to create the functionality to "Un-select" it, so when the user clicks on let's say "minimize", then the formatting that was selected before will disappear and the original layout will return. How can I get this to work using the codebase below. I am racking my brain on this one. I had it working last night, I think. It was a late one for me, so I could have been seeing things.
Please excuse the fact that I don't have my webcontrols in the EditItemTemplate. I still need to do this. Thanks
[bold]VB file[/bold]
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If IsPostBack = False Then
GetData()
End If
End Sub
Sub GetData()
Dim o_Pipe As New NewLeafTech.Projects.Pipeline()
dlPipeline.DataSource = o_Pipe.GetPipelineAll
DataBind()
End Sub
Sub dlPipeline_ItemCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.SelectedIndex = e.Item.ItemIndex
dlPipeline.EditItemIndex = -1
GetData()
End Sub
Sub dlPipeline_EditCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.EditItemIndex = e.Item.ItemIndex
GetData()
End Sub
Sub dlPipeline_CancelCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.EditItemIndex = -1
GetData()
End Sub
Sub dlPipeline_UpdateCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
'put logic here to update database
GetData()
End Sub
Sub dlPipeline_DeleteCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
Dim o_Pipe As New NewLeafTech.Projects.Pipeline()
o_Pipe.PrimaryKey = dlPipeline.DataKeys(e.Item.ItemIndex)
If o_Pipe.DeletePipeline Then
GetData()
End If
End Sub
[bold]ASPX code:[/bold]
<form id="Form1" method="post" runat="server">
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td bgcolor="#FFFFFF" width="25%"> </td>
<td width="50%" align="left" bgcolor="#FFFFFF">
<IMG SRC="NLTHeader800x90_Pipeline.gif" width="800" height="90" border="0" alt="New Leaf Technologies" />
</td>
<td bgcolor="#FFFFFF" width="25%"> </td>
</tr>
<tr>
<td bgcolor="#FFFFFF" width="25%"> <asp:Label ID="lblMessage" Runat="server"></asp:Label></td>
<td align="center" width="50%" bgcolor="#FFFFFF">
<aspataList
ID="dlPipeline"
Runat="server"
OnItemCommand="dlPipeline_ItemCommand"
OnEditCommand="dlPipeline_EditCommand"
OnCancelCommand="dlPipeline_CancelCommand"
OnUpdateCommand="dlPipeline_UpdateCommand"
OnDeleteCommand="dlPipeline_DeleteCommand"
DataKeyField="Pipe_ID">
<ItemTemplate>
<asp:LinkButton ID="lbtEdit" Runat="server" Text='<%# Container.DataItem("Company" %>'></asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
EDIT MODE
<div id="divPipe" class="box" runat="server" align=center>
<table border="0" cellpadding="2" cellspacing="3" bgcolor="#EEEEEE">
<tr>
<td colspan="4">Pipeline Details for <b><font color=#FF8800">
<%# Container.DataItem("Company" %></font></b> entered on <b>
<%# Container.DataItem("Entry_Date" %>
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status" %></td>
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name" %></td>
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage" %></td>
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number" %></td>
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client" %></td>
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email" %>"><%# Container.DataItem("FollowUp_Email" %></a></td>
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork" %></td>
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration" %></td>
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate" %></td>
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work" %></td>
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"%></td>
<td> </td>
<td> </td>
</tr>
<tr><td width="750" class="head" colspan="4">Technologies Utilized:</td></tr>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Technologies" %></td></tr>
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions" %></td></tr>
<tr><td width="750" class="head" colspan="4">Work Order Details:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Work_Details" %></td></tr>
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps" %></td></tr>
</table>
</div>
<div id="divPipeTools" class="tools" runat="server" align="left">
<table border="0" cellpadding="0" cellspacing="0" width="798" bgcolor="#666666">
<tr>
<td align=center height="100%" align=center valign=bottom>
<asp:LinkButton ID="btCancel" Runat=server Width="150" BackColor="#FF8800" Text="Cancel" CommandName="cancel"></asp:LinkButton>
<asp:LinkButton ID="btUpdate" Runat=server Width="150" BackColor="#FF8800" Text="Update" CommandName="update"></asp:LinkButton>
<asp:LinkButton ID="btDelete" Runat=server Width="150" BackColor="#FF8800" Text="Delete" CommandName="delete"></asp:LinkButton>
<asp:LinkButton ID="Linkbutton2" Runat=server Width="150" BackColor="#FF8800" Text="Minimize"></asp:LinkButton>
</td>
</tr>
</table>
</div>
</EditItemTemplate>
<SelectedItemTemplate>
SELECT MODE
<div id="Div1" class="box" runat="server" align=center>
<table border="0" cellpadding="2" cellspacing="3" bgcolor="#EEEEEE">
<tr>
<td colspan="4">Pipeline Details for <b><font color=#FF8800">
<%# Container.DataItem("Company" %></font></b> entered on <b>
<%# Container.DataItem("Entry_Date" %>
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status" %></td>
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name" %></td>
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage" %></td>
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number" %></td>
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client" %></td>
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email" %>"><%# Container.DataItem("FollowUp_Email" %></a></td>
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork" %></td>
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration" %></td>
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate" %></td>
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work" %></td>
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"%></td>
<td> </td>
<td> </td>
</tr>
<tr><td width="750" class="head" colspan="4">Technologies Utilized:</td></tr>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Technologies" %></td></tr>
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions" %></td></tr>
<tr><td width="750" class="head" colspan="4">Work Order Details:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Work_Details" %></td></tr>
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps" %></td></tr>
</table>
</div>
<div id="Div2" class="tools" runat="server" align="left">
<table border="0" cellpadding="0" cellspacing="0" width="798" bgcolor="#666666">
<tr>
<td align=center height="100%" align=center valign=bottom>
<asp:LinkButton ID="Linkbutton3" Runat=server Width="150" BackColor="#FF8800" Text="Minimize"></asp:LinkButton>
<asp:LinkButton ID="Button1" Runat=server Width="150" BackColor="#FF8800" Text="Edit" CommandName="edit"></asp:LinkButton>
<asp:LinkButton ID="Linkbutton1" Runat=server Width="150" BackColor="#FF8800" Text="Cancel" CommandName="cancel"></asp:LinkButton>
</td>
</tr>
</table>
</div>
</SelectedItemTemplate>
<SeparatorTemplate>
<p />
</SeparatorTemplate>
</aspataList>
</td>
<td bgcolor="#FFFFFF" width="25%"> </td>
</tr>
</table>
</form> regards,
Brian
The problem is when I want to create the functionality to "Un-select" it, so when the user clicks on let's say "minimize", then the formatting that was selected before will disappear and the original layout will return. How can I get this to work using the codebase below. I am racking my brain on this one. I had it working last night, I think. It was a late one for me, so I could have been seeing things.
Please excuse the fact that I don't have my webcontrols in the EditItemTemplate. I still need to do this. Thanks
[bold]VB file[/bold]
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If IsPostBack = False Then
GetData()
End If
End Sub
Sub GetData()
Dim o_Pipe As New NewLeafTech.Projects.Pipeline()
dlPipeline.DataSource = o_Pipe.GetPipelineAll
DataBind()
End Sub
Sub dlPipeline_ItemCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.SelectedIndex = e.Item.ItemIndex
dlPipeline.EditItemIndex = -1
GetData()
End Sub
Sub dlPipeline_EditCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.EditItemIndex = e.Item.ItemIndex
GetData()
End Sub
Sub dlPipeline_CancelCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
dlPipeline.EditItemIndex = -1
GetData()
End Sub
Sub dlPipeline_UpdateCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
'put logic here to update database
GetData()
End Sub
Sub dlPipeline_DeleteCommand(ByVal Sender As Object, ByVal e As DataListCommandEventArgs)
Dim o_Pipe As New NewLeafTech.Projects.Pipeline()
o_Pipe.PrimaryKey = dlPipeline.DataKeys(e.Item.ItemIndex)
If o_Pipe.DeletePipeline Then
GetData()
End If
End Sub
[bold]ASPX code:[/bold]
<form id="Form1" method="post" runat="server">
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td bgcolor="#FFFFFF" width="25%"> </td>
<td width="50%" align="left" bgcolor="#FFFFFF">
<IMG SRC="NLTHeader800x90_Pipeline.gif" width="800" height="90" border="0" alt="New Leaf Technologies" />
</td>
<td bgcolor="#FFFFFF" width="25%"> </td>
</tr>
<tr>
<td bgcolor="#FFFFFF" width="25%"> <asp:Label ID="lblMessage" Runat="server"></asp:Label></td>
<td align="center" width="50%" bgcolor="#FFFFFF">
<aspataList
ID="dlPipeline"
Runat="server"
OnItemCommand="dlPipeline_ItemCommand"
OnEditCommand="dlPipeline_EditCommand"
OnCancelCommand="dlPipeline_CancelCommand"
OnUpdateCommand="dlPipeline_UpdateCommand"
OnDeleteCommand="dlPipeline_DeleteCommand"
DataKeyField="Pipe_ID">
<ItemTemplate>
<asp:LinkButton ID="lbtEdit" Runat="server" Text='<%# Container.DataItem("Company" %>'></asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
EDIT MODE
<div id="divPipe" class="box" runat="server" align=center>
<table border="0" cellpadding="2" cellspacing="3" bgcolor="#EEEEEE">
<tr>
<td colspan="4">Pipeline Details for <b><font color=#FF8800">
<%# Container.DataItem("Company" %></font></b> entered on <b>
<%# Container.DataItem("Entry_Date" %>
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status" %></td>
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name" %></td>
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage" %></td>
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number" %></td>
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client" %></td>
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email" %>"><%# Container.DataItem("FollowUp_Email" %></a></td>
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork" %></td>
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration" %></td>
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate" %></td>
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work" %></td>
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"%></td>
<td> </td>
<td> </td>
</tr>
<tr><td width="750" class="head" colspan="4">Technologies Utilized:</td></tr>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Technologies" %></td></tr>
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions" %></td></tr>
<tr><td width="750" class="head" colspan="4">Work Order Details:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Work_Details" %></td></tr>
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps" %></td></tr>
</table>
</div>
<div id="divPipeTools" class="tools" runat="server" align="left">
<table border="0" cellpadding="0" cellspacing="0" width="798" bgcolor="#666666">
<tr>
<td align=center height="100%" align=center valign=bottom>
<asp:LinkButton ID="btCancel" Runat=server Width="150" BackColor="#FF8800" Text="Cancel" CommandName="cancel"></asp:LinkButton>
<asp:LinkButton ID="btUpdate" Runat=server Width="150" BackColor="#FF8800" Text="Update" CommandName="update"></asp:LinkButton>
<asp:LinkButton ID="btDelete" Runat=server Width="150" BackColor="#FF8800" Text="Delete" CommandName="delete"></asp:LinkButton>
<asp:LinkButton ID="Linkbutton2" Runat=server Width="150" BackColor="#FF8800" Text="Minimize"></asp:LinkButton>
</td>
</tr>
</table>
</div>
</EditItemTemplate>
<SelectedItemTemplate>
SELECT MODE
<div id="Div1" class="box" runat="server" align=center>
<table border="0" cellpadding="2" cellspacing="3" bgcolor="#EEEEEE">
<tr>
<td colspan="4">Pipeline Details for <b><font color=#FF8800">
<%# Container.DataItem("Company" %></font></b> entered on <b>
<%# Container.DataItem("Entry_Date" %>
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status" %></td>
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name" %></td>
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage" %></td>
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number" %></td>
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client" %></td>
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email" %>"><%# Container.DataItem("FollowUp_Email" %></a></td>
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork" %></td>
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration" %></td>
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date" %></td>
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate" %></td>
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work" %></td>
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"%></td>
<td> </td>
<td> </td>
</tr>
<tr><td width="750" class="head" colspan="4">Technologies Utilized:</td></tr>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Technologies" %></td></tr>
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions" %></td></tr>
<tr><td width="750" class="head" colspan="4">Work Order Details:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Work_Details" %></td></tr>
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps" %></td></tr>
</table>
</div>
<div id="Div2" class="tools" runat="server" align="left">
<table border="0" cellpadding="0" cellspacing="0" width="798" bgcolor="#666666">
<tr>
<td align=center height="100%" align=center valign=bottom>
<asp:LinkButton ID="Linkbutton3" Runat=server Width="150" BackColor="#FF8800" Text="Minimize"></asp:LinkButton>
<asp:LinkButton ID="Button1" Runat=server Width="150" BackColor="#FF8800" Text="Edit" CommandName="edit"></asp:LinkButton>
<asp:LinkButton ID="Linkbutton1" Runat=server Width="150" BackColor="#FF8800" Text="Cancel" CommandName="cancel"></asp:LinkButton>
</td>
</tr>
</table>
</div>
</SelectedItemTemplate>
<SeparatorTemplate>
<p />
</SeparatorTemplate>
</aspataList>
</td>
<td bgcolor="#FFFFFF" width="25%"> </td>
</tr>
</table>
</form> regards,
Brian