Back to Devexpress

SmartPasteBehaviorProperties Class

windowsforms-devexpress-dot-aiintegration-dot-winforms-8e809a0e.md

latest5.8 KB
Original Source

SmartPasteBehaviorProperties Class

Contains SmartPasteBehavior settings.

Namespace : DevExpress.AIIntegration.WinForms

Assembly : DevExpress.AIIntegration.WinForms.v25.2.dll

NuGet Package : DevExpress.AIIntegration.WinForms

Declaration

csharp
public class SmartPasteBehaviorProperties :
    BehaviorProperties
vb
Public Class SmartPasteBehaviorProperties
    Inherits BehaviorProperties

The following members return SmartPasteBehaviorProperties objects:

Remarks

Once you attached the SmartPasteBehavior to a control, you should describe items so that SmartPaste can assign right values to appropriate items. In the context of SmartPaste, an item refers to a LayoutControlItem when working with a LayoutControl, or a GridColumn when working with a GridControl.

Settings include:

  • ItemDescriptions – Gets a collection of item descriptions (AIItemDescription).
  • ExcludedItems – Gets a collection of items excluded from SmartPaste.
  • ProcessClipboardImage – Enable this option to analyze images copied to the clipboard.
  • PromptAugmentation – Specifies additional instructions that modify the prompt before processing.

Example

The following code snippet registers a SmartPasteBehavior and assigns it to an AdvBandedGridView. It uses the AI-powered SmartPaste extension to analyze clipboard content (text or image data) and automatically fill grid columns with structured data. The extension is configured to always return results in English.

csharp
public Form1() {
    InitializeComponent();
    behaviorManager1.Attach<SmartPasteBehavior>(advBandedGridView1, behavior => {
        behavior.Properties.PromptAugmentation = "Always translate the result into English.";
        behavior.Properties.ItemDescriptions.AddRange(new List<AIItemDescription>() {
                new AIItemDescription(advBandedGridView1.Columns["ProductName"], "Official name or product name."),
                new AIItemDescription(advBandedGridView1.Columns["ShippingWeight"], "Weight of the product when packaged for shipping (in lbs or kg)."),
                new AIItemDescription(advBandedGridView1.Columns["ProductDimensions"], "Physical size of TV without stand, typically in length, width, and height (in inches or mm)."),
                new AIItemDescription(advBandedGridView1.Columns["ShippingDimensions"], "Physical size of shipping package, typically in length, width, and height (in inches or mm)."),
                new AIItemDescription(advBandedGridView1.Columns["Warranty"], "Information related to the product warranty (in years or months)."),
            }
        );
        behavior.Properties.ExcludedItems.Add(advBandedGridView1.Columns["Notes"]);
        behavior.Properties.ProcessClipboardImage = DevExpress.Utils.DefaultBoolean.True;
    });
}
vb
Public Sub New()
    InitializeComponent()
    behaviorManager1.Attach(Of SmartPasteBehavior)(advBandedGridView1, Sub(behavior)
        behavior.Properties.PromptAugmentation = "Always translate the result into English."
        behavior.Properties.ItemDescriptions.AddRange(New List(Of AIItemDescription)() From {
            New AIItemDescription(advBandedGridView1.Columns("ProductName"), "Official name or product name."),
            New AIItemDescription(advBandedGridView1.Columns("ShippingWeight"), "Weight of the product when packaged for shipping (in lbs or kg)."),
            New AIItemDescription(advBandedGridView1.Columns("ProductDimensions"), "Physical size of TV without stand, typically in length, width, and height (in inches or mm)."),
            New AIItemDescription(advBandedGridView1.Columns("ShippingDimensions"), "Physical size of shipping package, typically in length, width, and height (in inches or mm)."),
            New AIItemDescription(advBandedGridView1.Columns("Warranty"), "Information related to the product warranty (in years or months).")
        })
        behavior.Properties.ExcludedItems.Add(advBandedGridView1.Columns("Notes"))
        behavior.Properties.ProcessClipboardImage = DevExpress.Utils.DefaultBoolean.True
    End Sub)
End Sub

Tip

Read the following help topic for additional information: Smart Paste AI-powered Extension.

Inheritance

Object DevExpress.Utils.Base.BaseObject DevExpress.Utils.Base.BaseProperties DevExpress.Utils.Behaviors.BehaviorProperties SmartPasteBehaviorProperties

See Also

SmartPasteBehaviorProperties Members

DevExpress.AIIntegration.WinForms Namespace