我已经创建了一个自定义用户控件,并且想在其他项目中使用它。 但是,当我将用户控件添加到其他项目的表单中时,我在用户控件中放置的属性将在表单设计器文件中获得默认值...
我希望仅当我更改属性的默认值时,才将其添加到其他项目的表单中,这只会发生。
我尝试了[DesignOnly(true)]
,但这一次不仅表单设计器文件上没有默认值,而且在属性窗口中更改它的值后也没有添加它。
编辑:
我在用户控制项上拥有这个...
[DisplayName("(MiladiDate)")]
public DateTime MiladiDate
{
get { return settedDate; }
set
{
settedDate = new DateTime(value.Year, value.Month, value.Day);
System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
gy = pc.GetYear(settedDate);
gm = pc.GetMonth(settedDate);
gd = pc.GetDayOfMonth(settedDate);
this.SetDate(settedDate);
}
}
一旦将此UC添加到其他项目的Windows窗体中,就会在窗体设计器文件中添加以下行:
this.persianDateTimePicker1.MiladiDate = new System.DateTime(2019, 1, 4, 0, 0, 0, 0);
但是我不希望在添加UC后立即发生这种情况,仅当我在属性窗口中更改MiladiDate属性的默认值时(单击UC时)才会发生。