FastReport
134 строки · 4.4 Кб
1using System.ComponentModel;2using FastReport.Data;3using FastReport.Utils;4
5namespace FastReport6{
7/// <summary>8/// Specifies the default paper size used when creating a new report.9/// </summary>10public enum DefaultPaperSize11{12/// <summary>13/// A4 paper (210 x 297 mm).14/// </summary>15A4,16
17/// <summary>18/// Letter paper (8.5 x 11 inches, 216 x 279 mm).19/// </summary>20Letter
21}22
23/// <summary>24/// This class contains settings that will be applied to the Report component.25/// </summary>26[TypeConverter(typeof(FastReport.TypeConverters.FRExpandableObjectConverter))]27public partial class ReportSettings28{29private Language defaultLanguage;30private DefaultPaperSize defaultPaperSize;31private bool usePropValuesToDiscoverBO;32private string imageLocationRoot;33
34/// <include file='Resources/doc.xml' path='//CodeDoc/Topics/EnvironmentSettings/DatabaseLogin/*'/>35public event DatabaseLoginEventHandler DatabaseLogin;36
37/// <summary>38/// Occurs after the database connection is established.39/// </summary>40public event AfterDatabaseLoginEventHandler AfterDatabaseLogin;41
42/// <summary>43/// Occurs when discovering the business object's structure.44/// </summary>45public event FilterPropertiesEventHandler FilterBusinessObjectProperties;46
47/// <summary>48/// Occurs when determining the kind of business object's property.49/// </summary>50public event GetPropertyKindEventHandler GetBusinessObjectPropertyKind;51
52/// <summary>53/// Occurs when discovering the structure of business object of ICustomTypeDescriptor type54/// with no instance specified.55/// </summary>56/// <remarks>57/// The event handler must return an instance of that type.58/// </remarks>59public event GetTypeInstanceEventHandler GetBusinessObjectTypeInstance;60
61/// <summary>62/// Gets or sets the default script language.63/// </summary>64[DefaultValue(Language.CSharp)]65public Language DefaultLanguage66{67get { return defaultLanguage; }68set { defaultLanguage = value; }69}70
71/// <summary>72/// Gets or sets the default paper size used when creating a new report.73/// </summary>74[DefaultValue(DefaultPaperSize.A4)]75public DefaultPaperSize DefaultPaperSize76{77get { return defaultPaperSize; }78set { defaultPaperSize = value; }79}80
81/// <summary>82/// Gets or sets a value indicating that the business object engine will use property values83/// when possible to discover the BO structure.84/// </summary>85[DefaultValue(true)]86public bool UsePropValuesToDiscoverBO87{88get { return usePropValuesToDiscoverBO; }89set { usePropValuesToDiscoverBO = value; }90}91
92/// <summary>93/// Gets or sets the default path for root of PictureObject.ImageLocation path.94/// </summary>95[DefaultValue("")]96public string ImageLocationRoot97{98get { return imageLocationRoot; }99set { imageLocationRoot = value; }100}101
102internal void OnAfterDatabaseLogin(DataConnectionBase sender, AfterDatabaseLoginEventArgs e)103{104if (AfterDatabaseLogin != null)105AfterDatabaseLogin(sender, e);106}107
108internal void OnFilterBusinessObjectProperties(object sender, FilterPropertiesEventArgs e)109{110if (FilterBusinessObjectProperties != null)111FilterBusinessObjectProperties(sender, e);112}113
114internal void OnGetBusinessObjectPropertyKind(object sender, GetPropertyKindEventArgs e)115{116if (GetBusinessObjectPropertyKind != null)117GetBusinessObjectPropertyKind(sender, e);118}119
120internal void OnGetBusinessObjectTypeInstance(object sender, GetTypeInstanceEventArgs e)121{122if (GetBusinessObjectTypeInstance != null)123GetBusinessObjectTypeInstance(sender, e);124}125
126/// <summary>127/// Initializes a new instance of the <see cref="ReportSettings"/> class.128/// </summary>129public ReportSettings()130{131usePropValuesToDiscoverBO = true;132}133}134}
135