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">
<asp
ataList
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>
</asp
ataList>
</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">
<asp
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"
</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"
<%# Container.DataItem("Entry_Date"
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status"
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name"
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage"
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number"
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client"
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email"
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork"
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date"
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration"
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date"
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate"
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work"
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"
<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"
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions"
<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"
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps"
</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"
<%# Container.DataItem("Entry_Date"
</b>.
</td>
</tr>
<tr>
<td width="150" class="head">Status:</td>
<td width="250" class="values"><%# Container.DataItem("Status"
<td width="150" class="head">Follow Up Name:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Name"
</tr>
<tr>
<td width="150" class="head">Stage:</td>
<td width="250" class="values"><%# Container.DataItem("Stage"
<td width="150" class="head">Follow Up Number:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Number"
</tr>
<tr>
<td width="150" class="head">Client Name:</td>
<td width="250" class="values"><%# Container.DataItem("Client"
<td width="150" class="head">Follow Up Email:</td>
<td width="250" class="values"><a href="mailto:<%# Container.DataItem("FollowUp_Email"
</tr>
<tr>
<td width="150" class="head">Type of Work:</td>
<td width="250" class="values"><%# Container.DataItem("TypeOfWork"
<td width="150" class="head">Follow Up Date:</td>
<td width="250" class="values"><%# Container.DataItem("FollowUp_Date"
</tr>
<tr>
<td width="150" class="head">Duration:</td>
<td width="250" class="values"><%# Container.DataItem("Duration"
<td width="150" class="head">Next Meeting Date:</td>
<td width="250" class="values"><%# Container.DataItem("Next_Mtg_Date"
</tr>
<tr>
<td width="150" class="head">Rate:</td>
<td width="250" class="values"><%# Container.DataItem("Rate"
<td width="150" class="head">Generated Work?</td>
<td width="250" class="values"><%# Container.DataItem("Got_Work"
</tr>
<tr>
<td width="150" class="head">Start Date:</td>
<td width="250" class="values"><%# Container.DataItem("Start_Date"
<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"
<tr><td width="750" class="head" colspan="4">Conditions:</td>
<tr><td width="750" colspan="4" class="values"><%# Container.DataItem("Conditions"
<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"
<tr><td width="750" class="head" colspan="4">Next Steps:</td></tr>
<tr><td width="750" class="values" colspan="4"><%# Container.DataItem("Next_Steps"
</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>
</asp
</td>
<td bgcolor="#FFFFFF" width="25%"> </td>
</tr>
</table>
</form> regards,
Brian