C# 创建自定义控件(WinForms)时,如何在“属性”窗口中显示它自己的结构

C# 创建自定义控件(WinForms)时,如何在“属性”窗口中显示它自己的结构,c#,properties,struct,custom-controls,C#,Properties,Struct,Custom Controls,有人能面对这个问题吗 我编写自定义控件。它的一个功能应该显示时间。 为了解决这个问题,我写了结构时间: public struct Time { public static implicit operator Time(DateTime date) { return new Time { Hours = date.Hour, Minutes = date.Minute }; } [Description("Hours")] public

有人能面对这个问题吗 我编写自定义控件。它的一个功能应该显示时间。 为了解决这个问题,我写了结构时间:

public struct Time
{
    public static implicit operator Time(DateTime date)
    {
        return new Time { Hours = date.Hour, Minutes = date.Minute };
    }

    [Description("Hours")]
    public int Hours { get; set; }

    [Description("Minutes")]
    public int Minutes { get; set; }
}
但是,当您在“属性”窗口中将控件添加到具有Time-inactive结构的窗体属性时

希望用户能够将数据输入到结构以及标准结构中,例如点:


我该怎么做?很难猜到您是如何使用它的,“向表单属性添加控件”肯定没有任何意义。隐式转换只有C#编译器才会考虑。在“属性”窗口中显示的字符串和基础值之间来回转换需要TypeConverter。DateTime已经有一个,它是DateTimeConverter。