Bonjour,
j'ai crée un Textbox Calendar sous forme de UserControl (Textbox avec bouton pour selectionner la date sur un calendar!
seulement, l'affichage de mon calendar(contenu dans un panel) se fait en code behind, ce qui fait donc un appel au serveur juste pour ça
j'aimerai pouvoir le faire en javascript pour éviter un rechargement des données!
mais je sais pas trop comment faire
voici mon code actuel
et mon code behind
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <%@ Control Language="C#" AutoEventWireup="true" CodeFile="UCCalendar.ascx.cs" Inherits="UCCalendar" %> <div> <asp:TextBox ID="txtDate" runat="server" ReadOnly="True"></asp:TextBox> <asp:ImageButton ID="ibtnCalendar" runat="server" ImageUrl="~/App_Themes/Default/Images/calendar.jpg" OnClick="ibtnCalendar_Click" /> <asp:Panel ID="pnlCalendar" runat="server" Visible="false" CssClass="calendar"> <asp:Calendar ID="calendar" runat="server" OnSelectionChanged="calendar_SelectionChanged" BackColor="White" BorderColor="#999999" CellPadding="4" DayNameFormat="Shortest" Font-Names="Verdana" Font-Size="8pt" ForeColor="Black" Height="180px" Width="200px"> <SelectedDayStyle BackColor="#666666" Font-Bold="True" ForeColor="White" /> <TodayDayStyle BackColor="#CCCCCC" ForeColor="Black" /> <SelectorStyle BackColor="#CCCCCC" /> <WeekendDayStyle BackColor="#FFFFCC" /> <OtherMonthDayStyle ForeColor="#808080" /> <NextPrevStyle VerticalAlign="Bottom" /> <DayHeaderStyle BackColor="#CCCCCC" Font-Bold="True" Font-Size="7pt" /> <TitleStyle BackColor="#999999" BorderColor="Black" Font-Bold="True" /> </asp:Calendar> </asp:Panel> </div>
si quelqu'un a des pistes ou une solution!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class UCCalendar : System.Web.UI.UserControl { /// <summary> /// Chargement du contrôle /// </summary> /// <param name="sender">Contrôle</param> /// <param name="e">Evènement</param> protected void Page_Load(object sender, EventArgs e) { } /// <summary> /// Ouverture du calendrier /// </summary> /// <param name="sender">Contrôle</param> /// <param name="e">Evènement</param> protected void ibtnCalendar_Click(object sender, ImageClickEventArgs e) { if (this.pnlCalendar.Visible) this.pnlCalendar.Visible = false; else this.pnlCalendar.Visible = true; } /// <summary> /// Sélection de la date /// </summary> /// <param name="sender">Contrôle</param> /// <param name="e">Evènement</param> protected void calendar_SelectionChanged(object sender, EventArgs e) { this.txtDate.Text = this.calendar.SelectedDate.ToShortDateString(); this.pnlCalendar.Visible = false; } }
merki
Partager