最近工作中要使用 WinForm 开发一个 FastReport 设计器。然后有这样一个需求:“在设计器中添加条形码时自动修改它 AutoSize
属性为 true
”。经过一番折腾后实现了这个功能,做一个简单的总结.
-
首先在窗体中添加一个 EnvironmentSetting
-
然后在它的属性页找到
ObjectInserted
事件
-
双击新建一个事件,代码实现如下:
/// <summary>
/// 修改添加的控件的属性
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void environmentSettings1_ObjectInserted(object sender, ObjectInsertedEventArgs e)
{
//如果添加的是条码
if (e.Object.GetType() == typeof(BarcodeObject))
{
BarcodeObject barcode = e.Object as BarcodeObject;
barcode.AutoSize = true;
}
}
利用这个事件我们可以在任意控件添加时就修改它的属性,以减少报表设计时的操作。