C# 在asp.net webcalendar中使用额外按钮更改月份

C# 在asp.net webcalendar中使用额外按钮更改月份,c#,asp.net,C#,Asp.net,我正在尝试使用c#.net自定义asp.net中的webcalendar元素 我想做的是:对于某些用户,禁用查看前几个月的功能-但是他们应该仍然能够看到接下来的所有月份 有没有办法使用按钮事件切换到下个月? 到目前为止,我只找到ShowNextPrevMonth==false 谢谢你的帮助 只需将PrevMonthText属性设置为空字符串,例如: <asp:Calendar ID="Calendar1" runat="server" PrevMonthText=""></as

我正在尝试使用c#.net自定义asp.net中的webcalendar元素

我想做的是:对于某些用户,禁用查看前几个月的功能-但是他们应该仍然能够看到接下来的所有月份

有没有办法使用按钮事件切换到下个月? 到目前为止,我只找到Show
NextPrevMonth==false


谢谢你的帮助

只需将
PrevMonthText
属性设置为空字符串,例如:

<asp:Calendar ID="Calendar1" runat="server" PrevMonthText=""></asp:Calendar>
更新

如果您只需要在用户处于当前月份时隐藏“上一个月”,但在用户处于未来月份时显示“上一个月”,请执行以下步骤:

仍然将其最初隐藏在标记中,但也为
onvisibleonhchanged
事件添加处理程序:

<asp:Calendar ID="Calendar1" runat="server" PrevMonthText="" OnVisibleMonthChanged="Calendar1_VisibleMonthChanged">
</asp:Calendar>

此代码将仅对受限用户隐藏“上一个月”,并且仅当用户的日历在当前月份时才隐藏。“只需将
PrevMonthText
属性设置为空字符串,例如:

<asp:Calendar ID="Calendar1" runat="server" PrevMonthText=""></asp:Calendar>
更新

如果您只需要在用户处于当前月份时隐藏“上一个月”,但在用户处于未来月份时显示“上一个月”,请执行以下步骤:

仍然将其最初隐藏在标记中,但也为
onvisibleonhchanged
事件添加处理程序:

<asp:Calendar ID="Calendar1" runat="server" PrevMonthText="" OnVisibleMonthChanged="Calendar1_VisibleMonthChanged">
</asp:Calendar>

此代码将仅为受限用户隐藏“上一个月”,并且仅当用户的日历位于当前月份时才隐藏。

不清楚您在问什么。好吧,查看日历的人应该能够导航到所有未来月份并返回到当前月份,但不能再返回。因此,如果您在2013年11月,用户应该能够导航到未来所有月份(12月13日、1月14日、2月14日等),但不能导航到10月13日。然后到了12月13日,他应该能够看到1月14日、2月14日等等,并且能够再次导航到12月13日,但不能导航到11月13日。我希望现在更清楚一点。不清楚你在问什么。好吧,看日历的人应该能够导航到所有未来的月份并返回到当前月份,但不能再返回。因此,如果您在2013年11月,用户应该能够导航到未来所有月份(12月13日、1月14日、2月14日等),但不能导航到10月13日。然后到了12月13日,他应该能够看到1月14日、2月14日等等,并且能够再次导航到12月13日,但不能导航到11月13日。我希望现在能更清楚一点。效果很好,谢谢你,但我并没有认真思考我的问题:我只想把“上个月”按钮隐藏几个月,实际上已经过去了。所以现在我们是在11月:所以我希望能够切换到12月、2014年1月等等,但不能回到今年10月。因此,我想切换到所有即将到来的月份并返回到当前月份,但不切换到当前月份之前的月份。比如:如果visibleMonth大于当前月份,则显示按钮;如果visibleMonth小于当前月份,则隐藏该按钮。我希望我没有把自己表达得太复杂。请看我最新的答案只是一个简短的提示:应该是e.NewDate.Month!=DateTime.Now.Month。但除此之外,完美@用户2791739。很高兴它对你有用。但实际上我把
==
放在那里是有原因的。这个想法是-当你在未来的几个月(12月等),你会看到前进和后退按钮。但一旦你们点击本月(=11月),后退按钮就消失了,所以你们不能再回到过去的本月。啊,是的,我后来看到了。我想我基本上把它改成了一个没有其他条款的版本。但如果你还感兴趣的话:在我的具体情况下,你的解决方案有一点缺陷。发生的情况是:prev按钮在当前月份没有显示(因此现在是2013年11月),但在2014年11月也没有显示。但在我的情况下,我真的只希望在查看当前月份时它不可见。我现在通过使用:e.NewDate.ToString(“MM/yyyy”)!=DateTime.Now.ToString(“MM/yyyy”)工作得很好,谢谢你,但我并没有认真思考我的问题:我只想在实际已经过去的几个月里隐藏上一个月按钮。所以现在我们是在11月:所以我希望能够切换到12月、2014年1月等等,但不能回到今年10月。因此,我想切换到所有即将到来的月份并返回到当前月份,但不切换到当前月份之前的月份。比如:如果visibleMonth大于当前月份,则显示按钮;如果visibleMonth小于当前月份,则隐藏该按钮。我希望我没有把自己表达得太复杂。请看我最新的答案只是一个简短的提示:应该是e.NewDate.Month!=DateTime.Now.Month。但除此之外,完美@用户2791739。很高兴它对你有用。但实际上我把
==
放在那里是有原因的。这个想法是-当你在未来的几个月(12月等),你会看到前进和后退按钮。但一旦你们点击本月(=11月),后退按钮就消失了,所以你们不能再回到过去的本月。啊,是的,我后来看到了。我想我基本上把它改成了一个没有其他条款的版本。但如果你还感兴趣的话:在我的具体情况下,你的解决方案有一点缺陷。发生的情况是:prev按钮在当前月份没有显示(因此现在是2013年11月),但在2014年11月也没有显示。但在我的情况下,我真的只希望在查看当前月份时它不可见。我现在通过使用:e.NewDate.ToString(“MM/yyyy”)!=DateTime.Now.ToString(“MM/yyyy”)