2

마스터 페이지가 있습니다. 콘텐츠 페이지에는 요청 변수가 포함 된 하이퍼 링크가 포함 된 목록이 있습니다. 링크 중 하나를 클릭하면 radiobuttonlist가 포함 된 페이지로 이동합니다 (어쩌면).동적으로 생성 된 라디오 버튼 목록

첫 번째 문제 : 새 페이지로 이동하면 변수 중 하나를 사용하여 라디오 버튼 목록을 페이지의 자리 표시 자에 추가할지 여부를 결정합니다. 페이지에서) _load 시도했지만 선택한 값을 가져올 수 없습니다. preInit에서 처음으로 페이지를 재생할 때 페이지 컨트롤에 연결할 수 없습니다. (객체 참조는 객체의 인스턴스로 설정되지 않습니다.) 저는 이것이 MasterPage와 페이지 내용과 관련이 있다고 생각합니까? 컨트롤은 나중에 인스턴스화되지 않습니다? (방법에 의해 VB를 사용)

두 번째 문제 : 내가 일하면서 버튼을 누르면, 나는 여전히 radiobuttonlist에서 선택된 항목을 결정하기 위해 전달 된 요청 변수에 액세스 할 수 있습니까?

Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit 
    'get sessions for concurrent 

    Dim Master As New MasterPage 
    Master = Me.Master 

    Dim myContent As ContentPlaceHolder = CType(Page.Master.FindControl("ContentPlaceHolder1"), ContentPlaceHolder) 
    If Request("str") = "1" Then 
     Dim myList As dsSql = New dsSql() ''''instantiate the function to get dataset 
     Dim ds As New Data.DataSet 

     ds = myList.dsConSessionTimes(Request("eid")) 
     If ds.Tables("conSessionTimes").Rows.Count > 0 Then 
      Dim conY As Integer = 1 

      CType(myContent.FindControl("lblSidCount"), Label).Text = ds.Tables("conSessionTimes").Rows.Count.ToString 

미안하지만 가끔 불편을 끼쳐 드려 죄송합니다. 어쩌면 그것을 이해하는 데 도움이 될까요?

감사합니다 .... JB

답변

2

는 콘텐츠 자리가있는 경우, 당신은 그냥 거기에 라디오 버튼 목록 컨트롤을 추가 할 수 있습니다? 다음 페이지에 사용 된 요청 변수를 포함

<asp:ContentPlaceHolder id="ContentPlaceHolderForRadioButtonList" runat="server">  
</asp:ContentPlaceHolder> 

일부 링크 : 마스터 페이지에

.

<a href="RadioButtonList.aspx?ref=first" >Link 1</a> 
<a href="RadioButtonList.aspx?ref=second" >Link 2</a><br /> 
<a href="RadioButtonList.aspx?ref=third" >Link 3</a><br /> 
<a href="RadioButtonList.aspx?ref=forth" >Link 4</a><br /> 
<a href="RadioButtonList.aspx?ref=fifth" >Link 5</a><br /> 
<a href="RadioButtonList.aspx?ref=sixth" >Link 6</a> 

이제 라디오 버튼 목록이있는 페이지에서 내용 자리 표시 자에 추가하십시오.

<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolderForRadioButtonList" Runat="Server"> 
<!-- radio button list to be dynamically populated--> 
    <asp:RadioButtonList ID="RadioButtonList1" runat="server"> 
    </asp:RadioButtonList> 
</asp:Content> 

RadioButtonList.aspx : 코드를 동적으로 전달 된 정보를 기반으로 라디오 버튼 목록을 채울

Partial Class RadioButtonList 
    Inherits System.Web.UI.Page 
    Private selection As String = "" 

    Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init 
     selection = IIf(Request.QueryString("ref") IsNot Nothing, Request.QueryString("ref"), "") 
     If selection = "first" Then 
      RadioButtonList1.Items.Add(New ListItem("first", "1")) 
      RadioButtonList1.Items.Add(New ListItem("third", "3")) 
      RadioButtonList1.Items.Add(New ListItem("fifth", "5")) 
     ElseIf selection = "second" Then 
      RadioButtonList1.Items.Add(New ListItem("second", "2")) 
      RadioButtonList1.Items.Add(New ListItem("forth", "4")) 
      RadioButtonList1.Items.Add(New ListItem("sixth", "6")) 
     Else 
      RadioButtonList1.Items.Add(New ListItem("first", "1")) 
      RadioButtonList1.Items.Add(New ListItem("second", "2")) 
      RadioButtonList1.Items.Add(New ListItem("third", "3")) 
      RadioButtonList1.Items.Add(New ListItem("forth", "4")) 
      RadioButtonList1.Items.Add(New ListItem("fifth", "5")) 
      RadioButtonList1.Items.Add(New ListItem("sixth", "6")) 
     End If 

     'set the selected radio button 
     For i As Integer = 0 To RadioButtonList1.Items.Count - 1 
      If RadioButtonList1.Items(i).Text = selection Then 
       RadioButtonList1.Items(i).Selected = True 
       Exit For 
      End If 
     Next 

    End Sub 

End Class 

바라건대 당신은 여기에 도움이 뭔가를 찾을 수 있습니다..

관련 문제