2014-06-20 2 views
0

modalpopup 안에 캘린더가 있습니다.modalpopup의 캘린더가 업데이트되지 않습니다.

내 목표는 :

  1. 하이라이트 선택한 날짜/S
  2. 이 코드는 목표하고있다

있는 gridview에서 이러한 날짜/s의 표시 목록에있는 날짜/s을 (를) 추가 2와 3은 괜찮습니다. 그러나 내가 선택한 날짜는 내가 클릭 할 때마다 강조 표시되지 않습니다. 하지만 팝업을 닫고 다시 열면 이전에 선택한 요일이 강조 표시됩니다.

업데이트 패널을 삽입하려고했지만 여전히 작동하지 않습니다. 이 문제를 해결하는 방법을 알고 있습니까?

감사합니다.

ASPX 코드 :

<asp:Panel ID="Panel2" runat="server"> 
<asp:UpdatePanel ID="UP_Calendar" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="False" RenderMode="Inline"> 
    <ContentTemplate> 

    <asp:Calendar ID="Calendar1" runat="server" BackColor="White" 
        BorderColor="Black" DayNameFormat="Shortest" Font-Names="Times New Roman" 
        Font-Size="10pt" ForeColor="Black" Height="220px" NextPrevFormat="FullMonth" 
        TitleFormat="Month" Width="412px" OnDayRender = "Calendar13_DayRender" OnSelectionChanged="Calendar13_SelectionChanged" > 

        <SelectedDayStyle BackColor="#CC3333" ForeColor="White" /> 
        <SelectorStyle BackColor="#CCCCCC" Font-Bold="True" Font-Names="Verdana" 
         Font-Size="8pt" ForeColor="#333333" Width="1%" />      
        <TodayDayStyle BackColor="#CCCC99" /> 
        <OtherMonthDayStyle ForeColor="#999999" /> 
        <DayStyle Width="14%" /> 
        <NextPrevStyle Font-Size="8pt" ForeColor="White" /> 
        <DayHeaderStyle BackColor="#CCCCCC" Font-Bold="True" Font-Size="7pt" 
         ForeColor="#333333" Height="10pt" /> 
        <TitleStyle BackColor="Black" Font-Bold="True" Font-Size="13pt" 
         ForeColor="White" Height="14pt" /> 
       </asp:Calendar> 
       </ContentTemplate> 
    </asp:UpdatePanel> 
         </asp:Panel> 

그리고 이것은 렌더링 코드 내 일이다

Protected Sub Calendar1_DayRender(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DayRenderEventArgs) Handles Calendar1.DayRender 

    If e.Day.IsSelected = True Then 
     list_Days.Add(e.Day.[Date]) 
     e.Cell.BackColor = Color.Orange 
    End If 

    Session("SelectedDates") = list_Days 

그리고 인 selectionchanged 이벤트 코드 :

Protected Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e As EventArgs) 
    If Session("SelectedDates") IsNot Nothing Then 
     Dim newList As List(Of DateTime) = DirectCast(Session("SelectedDates"), List(Of DateTime)) 
     For Each dt As DateTime In newList 
      Calendar1.SelectedDates.Add(dt) 
     Next 
     list_Days.Clear() 
    End If 
End Sub 

답변

0

이 종류의 바보이지만, 이후 일부 재판에서 오류가 업데이트 패널 상태에 있음을 알았습니다. 난 그냥 "UpdateMode에 설정 :"항상 ""그리고 그것은 효과.

관련 문제