向打开新窗体的控件添加新属性



我们有一个使用活动报表的报表设计器项目。我们想要使用活动报告的子报告工具。子报表控件具有一个"report"属性,该属性填充子报表的ActiveReport内容。由于我们有一个设计器项目和一个SubReport工具,我想向SubReport控件添加一个属性,该属性将打开一个新表单,使用户可以从列表中选择一个报告并将报告加载到SubReport控件中。

那么,如何向打开新窗口窗体的控件添加属性呢?

以下是我如何设置属性:

public class SubReportProp
{
    private DataDynamics.ActiveReports.SubReport _SubReport;
    public SubReportProp(DataDynamics.ActiveReports.SubReport subReport, List<string> fieldCollection)
    {
        this._SubReport = subReport;
        if (fieldCollection != null && fieldCollection.Count > 0)
        {
            FieldVars._DataFields = fieldCollection;
        }
    }
    [DisplayName("X")]
    [Description("Kontrolün yatay konumunu getirir veya ayarlar.")]
    [Category("Konum")]
    public float X
    {
        get
        {
            return SharedProp.TrimFloatValue(ActiveReport.InchToCm(_SubReport.Location.X));
        }
        set
        {
            _SubReport.Location = new PointF(ActiveReport.CmToInch(value), _SubReport.Location.Y);
        }
    }
    [DisplayName("Y")]
    [Description("Kontrolün dikey konumunu getirir veya ayarlar.")]
    [Category("Konum")]
    public float Y
    {
        get
        {
            return SharedProp.TrimFloatValue(ActiveReport.InchToCm(_SubReport.Location.Y));
        }
        set
        {
            _SubReport.Location = new PointF(_SubReport.Location.X, ActiveReport.CmToInch(value));
        }
    }
}

像这些x,y坐标一样,我还需要添加另一个属性,该属性允许用户从列表中选择一个报告并应用于_SubReport.report

http://blogs.gcpowertools.co.in/2011/11/showcase-enhance-end-user-designer.html#more

我想你应该看看这个博客。它正是你想要的。

kubilay

报表布局可以保存为流。您可以将其作为blob/byte数组保存到数据库中。如果可能的话,您也可以将报告以xml格式保存为文本。这是使用ActiveReport的SaveLayout API实现的。

然后可以使用LoadLayout API将此报告加载回。

最新更新