여러 컨트롤을 만드는 함수가 있습니다. 주로 Amazon 지불 버튼에 대한 동적 데이터가있는 필드 및 이미지 버튼을 입력하십시오.함수에서 반환 된 자리 표시 자에 여러 컨트롤 추가
이러한 컨트롤을 페이지에 렌더링되도록 어떻게 자리 표시 자에 추가 할 수 있습니까?
나는 함수 안에 자리 표시자를 만들고 컨트롤을 추가하고 자리 표시자를 반환하려고했습니다.
그러나 컨트롤이 렌더링되지 않았습니다.
plhCart.Controls.Add(GetPayNowWidgetForm(...))
를 사용하여 지금 스티브 사원의 제안을 사용하고
Protected Function GetPayNowWidgetForm(ByVal formHiddenInputs As SortedDictionary(Of [String], [String])) As PlaceHolder
Dim payButton As New ImageButton
Dim plhForm As New PlaceHolder
Dim counter As Integer = 1
payButton.ID = "imgPayButton"
payButton.PostBackUrl = "https://authorize.payments-sandbox.amazon.com/pba/paypipeline"
payButton.ImageUrl = "https://authorize.payments-sandbox.amazon.com/pba/images/GMPayNowWithAmazon.png"
plhForm.Controls.Add(payButton)
' Add the Key/Value pairs from formHiddenInputs
For Each kvp As KeyValuePair(Of [String], [String]) In formHiddenInputs
Dim hiddenField As HtmlControl = New HtmlControls.HtmlInputHidden
' Dim hiddenField As New HiddenField
hiddenField.Attributes.Add("name", kvp.Key)
hiddenField.Attributes.Add("value", kvp.Value)
plhForm.Controls.Add(hiddenField)
counter += 1
Next
Return plhForm
End Function
이 내 페이지의 자리에 자리를 반환 추가 :
이 함수 컨트롤을 생성하고 개체 틀에 추가입니다
이것은 잘 작동하고 있으며 어젯밤에 생각한 것보다 나을 것입니다. 내 원래 솔루션 컨트롤을 만들고이를 system.array로 반환했습니다. 그런 다음 배열을 반복하면서 각 컨트롤을 자리 표시 자에 추가합니다.
에서 그들을 렌더링해야합니까? 페이지에 자리 표시자를 추가하고 있습니까? – womp