1

我创建了一个基于Visual Studio 2010 c#的自定义日期时间选择器。UserControl此控件中有 a RichTextBox、 aButtonMonthCalendar

http://i.imgur.com/85iwc.png?1

我将 UserControl 的高度更改为隐藏/显示日历。我的问题是,当我将此控件放在GroupBox面板上,父级将其重叠:

http://i.imgur.com/tVrI0.png

我已经解决了这个在控件Parent上的循环,直到找到主窗体,然后将其设置为我的 DateTimePicker 的父窗体。

    Control parent = this.Parent ?? null;
        while (parent != null)
        {
            if (parent is Form)
                break;
            parent = parent.Parent;

        }
        this.clnMonth.Parent = parent;
        clnMonth.Location = this.PointToScreen(Point.Empty);

我试图放置在另一个表单上并在单击后显示/隐藏它,但是在DateTimePickerMonthCalendar下定位表单存在巨大问题。上述方法效果很好,但我知道这不是最好的解决方案。你能给我任何替代的想法吗?

4

0 回答 0