Back to Devexpress

SRCategoryAttribute Class

xtrareports-devexpress-dot-xtrareports-a14a438b.md

latest4.6 KB
Original Source

SRCategoryAttribute Class

Enables you to specify the Properties window category where a custom property should be placed.

Namespace : DevExpress.XtraReports

Assembly : DevExpress.XtraReports.v25.2.dll

NuGet Package : DevExpress.Reporting.Core

Declaration

csharp
[AttributeUsage(AttributeTargets.All)]
public sealed class SRCategoryAttribute :
    CategoryAttribute
vb
<AttributeUsage(AttributeTargets.All)>
Public NotInheritable Class SRCategoryAttribute
    Inherits CategoryAttribute

Remarks

This attribute enables you to locate a property in a Properties window category localized using ReportStringId. In other aspects, it is similar to the is similar to CategoryAttribute.

When both the SRCategoryAttribute and BindableAttribute are specified, the property will appear in both the Data and the custom category.

When no custom category is specified, a property appears in the Misc category.

Example

This example illustrates the use of the DefaultBindablePropertyAttribute and SRCategoryAttribute that define the behavior of custom properties specified for XRControl descendants.

csharp
using DevExpress.XtraReports;
using DevExpress.XtraReports.Localization;
using DevExpress.XtraReports.UI;
// ...

// The following line specifies the default property to bind the control 
// to a field dropped from the Field List.
[DefaultBindableProperty("MyCustomProperty")]
public class MyCustomLabel : XRLabel {
    // The following line specifies the Properties window category, 
    // where a custom property is located.
    [SRCategory(ReportStringId.CatAppearance)]
    // When BindableAttribute is applied, the property will appear
    // in the Data category, as well as in the custom category (if specified).
    [System.ComponentModel.Bindable(true)]
    public string MyCustomProperty { get; set; }
}

public class MyCustomPageHeaderBand : PageHeaderBand {
    // When no custom Properties window category is specified, 
    // a property appears in the Misc category.
    public string MyCustomBandProperty { get; set; }
}
vb
Imports DevExpress.XtraReports
Imports DevExpress.XtraReports.Localization
Imports DevExpress.XtraReports.UI
' ...

' The following line specifies the default property to bind the control 
' to a field dropped from the Field List.
<DefaultBindableProperty("MyCustomProperty")> _
Public Class MyCustomLabel
    Inherits XRLabel
    ' The following line specifies the Properties window category, 
    ' where a custom property is located.
    ' When BindableAttribute is applied, the property will appear
    ' in the Data category, as well as in the custom category (if specified).
    <SRCategory(ReportStringId.CatAppearance)> _
     _
    Public Property MyCustomProperty() As String
        Get
            Return m_MyCustomProperty
        End Get
        Set
            m_MyCustomProperty = Value
        End Set
    End Property
    Private m_MyCustomProperty As String
End Class

Public Class MyCustomPageHeaderBand
    Inherits PageHeaderBand
    ' When no custom Properties window category is specified, 
    ' a property appears in the Misc category.
    Public Property MyCustomBandProperty() As String
        Get
            Return m_MyCustomBandProperty
        End Get
        Set
            m_MyCustomBandProperty = Value
        End Set
    End Property
    Private m_MyCustomBandProperty As String
End Class

Inheritance

Object Attribute CategoryAttribute SRCategoryAttribute

See Also

SRCategoryAttribute Members

DefaultBindablePropertyAttribute

DevExpress.XtraReports Namespace