Class SfAIAssistView
A user interface control that can create modern conversational chatbot experiences in mobile applications. It is a flexible control that shows a conversation between two or more users in a fully customizable layout.
Inheritance
Namespace: Syncfusion.UI.Xaml.Chat
Assembly: Syncfusion.SfChat.Wpf.dll
Syntax
public class SfAIAssistView : Control
Constructors
SfAIAssistView()
Initializes a new instance of the SfAIAssistView class.
Declaration
public SfAIAssistView()
Fields
BannerTemplateProperty
Identifies the BannerTemplate dependency property."/>
Declaration
public static readonly DependencyProperty BannerTemplateProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
CurrentUserProperty
Identifies the CurrentUser dependency property.
Declaration
public static readonly DependencyProperty CurrentUserProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
EditTemplateSelectorProperty
Identifies the EditTemplateSelector dependency property.
Declaration
public static readonly DependencyProperty EditTemplateSelectorProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
EnableStopRespondingProperty
Identifies the EnableStopResponding dependency property.
Declaration
public static readonly DependencyProperty EnableStopRespondingProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
IsResponseToolbarVisibleProperty
Identifies the IsResponseToolbarVisible dependency property.
Declaration
public static readonly DependencyProperty IsResponseToolbarVisibleProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
MessagesProperty
Identifies the Messages dependency property.
Declaration
public static readonly DependencyProperty MessagesProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
ResponseToolbarItemsProperty
Identifies the ResponseToolbarItems dependency property.
Declaration
public static readonly DependencyProperty ResponseToolbarItemsProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
ShowTypingIndicatorProperty
Identifies the ShowTypingIndicator dependency property.
Declaration
public static readonly DependencyProperty ShowTypingIndicatorProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
StopRespondingCommandProperty
Identifies the StopRespondingCommand dependency property.
Declaration
public static readonly DependencyProperty StopRespondingCommandProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
StopRespondingTemplateProperty
Identifies the StopRespondingTemplate dependency property.
Declaration
public static readonly DependencyProperty StopRespondingTemplateProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
SuggestionsProperty
Identifies the Suggestions dependency property.
Declaration
public static readonly DependencyProperty SuggestionsProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
TypingIndicatorProperty
Identifies the TypingIndicator dependency property.
Declaration
public static readonly DependencyProperty TypingIndicatorProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
ViewTemplateSelectorProperty
Gets or sets the template selector for the view mode.
Declaration
public static readonly DependencyProperty ViewTemplateSelectorProperty
Field Value
Type |
---|
System.Windows.DependencyProperty |
Properties
BannerTemplate
Gets or sets the template for the banner content in the chat control.
Declaration
public DataTemplate BannerTemplate { get; set; }
Property Value
Type |
---|
System.Windows.DataTemplate |
CurrentUser
Gets or sets the current author of a message.
Declaration
public Author CurrentUser { get; set; }
Property Value
Type |
---|
Author |
EditTemplateSelector
Gets or sets the template selector for the edit mode.
Declaration
public DataTemplateSelector EditTemplateSelector { get; set; }
Property Value
Type |
---|
System.Windows.Controls.DataTemplateSelector |
EnableStopResponding
Gets or sets a value indicating whether the "Stop Responding" option is enabled or disabled.
true
, users can manually stop the AI response using the stop responding button.
When set to false
, the option is disabled, preventing users from interrupting the response.
The default value is false
.
<syncfusion:SfAIAssistView EnableStopResponding="True"/>
Declaration
public bool EnableStopResponding { get; set; }
Property Value
Type |
---|
System.Boolean |
IsResponseToolbarVisible
Declaration
public bool IsResponseToolbarVisible { get; set; }
Property Value
Type |
---|
System.Boolean |
Messages
Gets or sets the collection of messages to be displayed in the chat.
Declaration
public object Messages { get; set; }
Property Value
Type |
---|
System.Object |
ResponseToolbarItems
Gets or sets the collection of response toolbar items.
Declaration
public ObservableCollection<ResponseToolbarItem> ResponseToolbarItems { get; set; }
Property Value
Type |
---|
System.Collections.ObjectModel.ObservableCollection<ResponseToolbarItem> |
Remarks
This property allows you to customize the toolbar actions available for response messages (AI messages).
By default, the collection includes "Copy", "Regenerate", "Like", and "Dislike" toolbar items. You can add custom toolbar items to this collection.
Example:
// Add a custom toolbar item
myAssistView.ResponseToolbarItems.Add(new ResponseToolbarItem
{
Text = "Summarize",
Tooltip = "Summarize response",
IsEnabled = true,
Visible = true
});
// Handle the toolbar item click event
myAssistView.ResponseToolbarItemClicked += (sender, args) =>
{
if (args.Item.Text == "Summarize")
{
// Handle custom action
}
};
ShowTypingIndicator
Gets or sets a value indicating whether the typing indicator should be displayed at the bottom of the chat control to notify when a user is typing.
Declaration
public bool ShowTypingIndicator { get; set; }
Property Value
Type |
---|
System.Boolean |
StopRespondingCommand
Gets or sets the command to be executed when the Stop Responding view is clicked.
Declaration
public ICommand StopRespondingCommand { get; set; }
Property Value
Type |
---|
System.Windows.Input.ICommand |
Remarks
This command allows handling user interactions when they choose to stop an ongoing response. It can be bound to a command in the ViewModel to execute specific logic.
Examples
<syncfusion:SfAIAssistView StopRespondingCommand="{Binding StopCommand}" />
StopRespondingTemplate
Gets or sets the template used to define the Stop Responding view of the SfAIAssistView.
Declaration
public DataTemplate StopRespondingTemplate { get; set; }
Property Value
Type |
---|
System.Windows.DataTemplate |
Remarks
This property allows customization of the appearance and layout of the Stop Responding view. The provided System.Windows.DataTemplate can include UI elements such as buttons, icons, or messages.
Examples
<syncfusion:SfAIAssistView>
<syncfusion:SfAIAssistView.StopRespondingTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Stopping..." />
</StackPanel>
</DataTemplate>
</syncfusion:SfAIAssistView.StopRespondingTemplate>
</syncfusion:SfAIAssistView>
Suggestions
Gets or sets the list of items to be displayed as a response to a user message. The suggestions will be displayed above the message typing/input area as part of the footer view.
Declaration
public IEnumerable<string> Suggestions { get; set; }
Property Value
Type |
---|
System.Collections.Generic.IEnumerable<System.String> |
TypingIndicator
Gets or sets the helper to set the settings for the typing indicator.
Declaration
public TypingIndicator TypingIndicator { get; set; }
Property Value
Type |
---|
TypingIndicator |
ViewTemplateSelector
Gets or sets the template selector for the view mode.
Declaration
public DataTemplateSelector ViewTemplateSelector { get; set; }
Property Value
Type |
---|
System.Windows.Controls.DataTemplateSelector |
Methods
OnApplyTemplate()
Builds the visual tree for the SfAIAssistView class.
Declaration
public override void OnApplyTemplate()
Events
ResponseToolbarItemClicked
Occurs when a response toolbar item is clicked.
Declaration
public event EventHandler<ResponseToolbarItemClickedEventArgs> ResponseToolbarItemClicked
Event Type
Type |
---|
System.EventHandler<ResponseToolbarItemClickedEventArgs> |
StopResponding
Occurs when the stop responding view is clicked.
Declaration
public event EventHandler<EventArgs> StopResponding
Event Type
Type |
---|
System.EventHandler<System.EventArgs> |
Remarks
This event is triggered when the user interacts with the stop responding view to cancel an ongoing AI response.
Examples
SfAIAssistView aiAssistView = new SfAIAssistView();
aiAssistView.StopResponding += AiAssistView_StopResponding;
private void AiAssistView_StopResponding(object sender, EventArgs e)
{
// Handle AI response cancellation logic
MessageBox.Show("AI response has been stopped.");
}
SuggestionSelected
Occurs when the suggestion item is selected in the SfAIAssistView control.
Declaration
public event EventHandler<SuggestionClickedEventArgs> SuggestionSelected
Event Type
Type |
---|
System.EventHandler<SuggestionClickedEventArgs> |