【问题标题】:Click on month in Silverlight Calendar in year mode, get the selected month and stay in year mode?在年模式下单击 Silverlight 日历中的月份,获取所选月份并保持年模式?
【发布时间】:2010-10-22 17:09:32
【问题描述】:

我想为用户提供选择月份\年份的能力 我打算只使用 2 个列表框,但我说 Silverlight 日历有一个年份模式,它显示一年中的月份(而不是所有月份天)。

但是当您点击某个月份时,它会切换到显示所选月份中的日期(月份模式)。

我尝试在 SelectedDatesChanged 事件中切换回年份模式。但意识到只有在我选择一个月中的特定日期后才会触发(此时它会切换回年份模式)。

所以我的问题: - 我可以让日历保持年份模式吗? - 所选月份有活动吗? - 我什至可以选择月份吗?

谢谢

【问题讨论】:

    标签: silverlight calendar


    【解决方案1】:

    有一个可以使用的 DisplayModeChanged 事件。在我的情况下,我需要所选月份的第一个日期和最后一个日期......下面的代码可以满足我的需要。

    private void CalendarDisplayModeChanged(object sender, CalendarModeChangedEventArgs e)
    {    
        //control might be null at start up so check for null
        //probably could hook up event in Loaded or constructor instead of xaml to prevent this
        if (calendarInYearMode != null) {
              //reset back to year mode
            calendarInYearMode.DisplayMode = CalendarMode.Year;
            if (calendarInYearMode.DisplayDate != DateTime.MinValue) {
                var beginningOfMonthDate = calendarInYearMode.DisplayDate;
                var endOfMonthDate = calendarInYearMode.DisplayDate.AddMonths(1).AddDays(-1);       
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多