C# 如何在Infragistics.Win.UltraWinSchedule.UltraCalendarCombo中以编程方式设置用户月份可见?

C# 如何在Infragistics.Win.UltraWinSchedule.UltraCalendarCombo中以编程方式设置用户月份可见?,c#,infragistics,ultrawingrid,C#,Infragistics,Ultrawingrid,我在项目中使用UltraCalendarCombo。我希望用户在下拉式日期选择器中看到一些预选的日期。此预选日期是根据其他一些属性计算的。 我做下一件事: var calendarInfo = ultraGridCalendar.CalendarInfo; calendarInfo.ActivateDay(selectedDate); 但这段代码并不像我预期的那样工作。它只选择这一天,但用户应该手动导航到年和月,这与所选日期相对应。我希望日历组合显示所选日期,即月份和年份。我找到了问题的答案。

我在项目中使用
UltraCalendarCombo
。我希望用户在下拉式日期选择器中看到一些预选的日期。此预选日期是根据其他一些属性计算的。 我做下一件事:

var calendarInfo = ultraGridCalendar.CalendarInfo;
calendarInfo.ActivateDay(selectedDate);

但这段代码并不像我预期的那样工作。它只选择这一天,但用户应该手动导航到年和月,这与所选日期相对应。我希望日历组合显示所选日期,即月份和年份。

我找到了问题的答案。 UltraCalendarCombo中有
VisibleMonths
属性,但它是不可编辑的,并且包含可见月份。但是还有一个对我有用的属性:
FirstMonth
。这是我的案子所需要的全部财产。它有setter,我可以在激活日期后的月份对用户可见。 所有代码:

var calendarInfo = ultraGridCalendar.CalendarInfo;
calendarInfo.ActivateDay(selectedDate);
ultraGridCalendar.FirstMonth = calendarInfo.GetMonth(selectedDate);
我在单元格编辑器的AfterDropDown事件处理程序中完成这一切。 所以,当用户点击下拉菜单时,他可以看到日期,这是我希望他默认看到的


您可以使用
ultraGridCalendar.Value
属性的setter,但在文本框中您将看到此值,并且基础模型将包含此值。期望的行为不是选择值而不是用户,只是突出显示“建议”。

我不确定我是否理解期望的行为。您的代码是否仅选择日期的DD部分,强制用户选择MM YYYY?或者它的目的是在默认情况下选择MM/DD/YYYY?
selectedDate
是预选日期(即不仅仅是日期)
calendarInfo.ActiveDay
的类型为
Day
,它不仅包含DD,还包含处于其状态的月份和年份。所需的行为如下:假设预选日期为
01-Mar-2010
,则当用户单击下拉菜单时,该日期应以任一方式突出显示并显示给用户。用户应该看到2010年3月和highlighter 01。但该日期不应在单元格中显示为文本,而应仅突出显示。