【问题标题】:Is that possible to add new next and previous button for asp:Calendar是否可以为 asp:Calendar 添加新的下一个和上一个按钮
【发布时间】:2011-11-22 13:20:41
【问题描述】:

asp.Net 日历在日历日名称上提供了下一个和上一个按钮,但我不喜欢它。我正在尝试在日历之外添加下一个和上一个按钮,就像 Google 日历一样。那么是否可以将MonthChangedEventArgs添加到按钮中,这样我就可以像asp.Net Calendar提供的OnVisibleMonthChanged一样使用它。

仅供参考:当您单击下一个按钮时,月份会发生变化。只是 就像你使用 e.NewDatee.Previous from MonthChangedEventArgsDate 然后使用.VisibleDate 更新 日历

【问题讨论】:

    标签: c# asp.net calendar


    【解决方案1】:

    参见this 文章,我可以使用它创建一个下拉框,让您选择月份。这比按钮或超链接要好,因为我可以从 2 月到 12 月而无需太多点击。这是一个屏幕截图:

    Here is the article.

    这是working demo for you

    您特别关注的代码是:

    public void Set_Calendar(object Sender, EventArgs E)
    {
        cntCalendar.TodaysDate = Convert.ToDateTime(drpCalMonth.SelectedItem.Value + " 1, " + drpCalYear.SelectedItem.Value);
    }
    

    【讨论】:

    • 感谢您的回复,但是,这样您必须在将字符串连接到 .TodaysDate 之前连接字符串并自己验证月份和年份,对吗?
    • @IDoComeBy - 您只是通过下拉框获取月份和年份,这比通过超链接来回移动要好得多(这些箭头在日历上,它们呈现到一个href链接)。这些链接迫使您经过这么多不同的月份才能到达特定月份,默认情况下它们也被设置为 Autopostback 为 true,这会使您的应用程序滞后。如果你给他们一个下拉框,你的最终用户会感谢你的,尤其是几个月和几年。
    • @IDoComeBy - 每个月都从 1 开始,因此您不必验证它,并且下拉框中的条目应该已经过验证,因此第二次验证它们没有意义。在用户选择值之前,您应该只加载有效的月份和年份。
    猜你喜欢
    • 2015-11-24
    • 1970-01-01
    • 2021-01-24
    • 2020-02-17
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多