我需要MonthCalendar
在单独的对话框中显示 , ,如下所示:
问题是这个日历的显示取决于应用程序运行的系统,导致这样的变化(来自同一个应用程序,在不同的 PC 上):
据我了解,这取决于应用程序恰好在其下运行的视觉风格或主题。问题是,我如何计算需要放置日历的表格的适当大小,或者以其他方式使其在具有不同主题的多个系统上看起来很优雅?
我对当前的代码很不满意,它将日历放置在一个表单中container
(
private static Form SetUpCalendar()
{
var calendar = new MonthCalendar
{
MaxSelectionCount = maxSelectionCount,
BackColor = SystemColors.Info,
CalendarDimensions = new Size(1, 1),
// (..etc...)
};
var container = new Form
{
FormBorderStyle = FormBorderStyle.FixedDialog,
Size = new Size(calendar.Width + 74, calendar.Height + 47)
};
container.Controls.AddRange(new Control[] {calendar});
return container;
}
我一直无法找到一种方法来更好地自动调整表单的大小以适应日历,并且将不胜感激有关如何改进这一点的任何提示。