I have buttonField in DetailsView on my page. The DetailsView is in UpdatePanel.
<
asp:UpdatePanelID="UpdatePanel3"runat="server"><ContentTemplate>
<
asp:DetailsView ID="dv_melodies_info" ...AutoGenerateRows="false"> <Fields> <asp:ButtonFieldButtonType="Link"CommandName="listen_melody"DataTextField=""Text="Listen melody" .../>
...
</Fields></asp:DetailsView> </ContentTemplate></asp:UpdatePanel>
I want to add a PostbackTrigger on autogenerated button ("Listen melody") in DetailsView.
I try to use 'RegisterPostBackControl' method and Triggers.Add method, but it's not success.
Sub dv_melodies_info_DataBound(ByVal senderAsObject,ByVal e As EventArgs)Handles dv_melodies_info.DataBound
If dv_melodies_info.Rows.Count > 0ThenDim controlAs LinkButton = dv_melodies_info.Rows(1).Controls(0).Controls(0)Dim text AsString = control.Text
If text = "Listen melody"Then
Dim scm As ScriptManager = Master.FindControl("ScriptManager1")scm.RegisterPostBackControl(control)
'Or'Dim trigger As System.Web.UI.PostBackTrigger = New System.Web.UI.PostBackTrigger()
'trigger.ControlID = control.UniqueID'UpdatePanel3.Triggers.Add(trigger)End
IfEndIf
EndSub
Sub
dv_melodies_info_ItemCommand1(ByVal senderAsObject, ByVal e As System.Web.UI.WebControls.DetailsViewCommandEventArgs)Handles dv_melodies_info.ItemCommandDim cmdName AsString = e.CommandNameIf (cmdName = "listen_melody") ThenDim FullName AsString = ...
If (File.Exists(FullName)) Then
Dim fileInfo As System.IO.FileInfo =New System.IO.FileInfo(FullName)
Response.Buffer =
TrueResponse.Clear()
Response.ContentType =
"application/octet-stream"Response.AddHeader(
"Content-Length", fileInfo.Length.ToString())Response.AddHeader(
"Content-Disposition","attachment; filename="+ HttpUtility.UrlEncode(Request.ContentEncoding.GetBytes(FullName)))Response.TransmitFile(FullName)
Response.Flush()
EndIfEndIfEndSub
When I click the "Listen melody" button, i get the exception "Error parsing near ..." So, PostbackTrigger is not set on the "Listen Melody" button
What is wrong? Help me, please.
Julia