Class MessageBase
Represents the most basic abstraction of message that can report action results.
Inheritance
Namespace: Telerik.Windows.Controls.ConversationalUI
Assembly: Telerik.Windows.Controls.ConversationalUI.dll
Syntax
public abstract class MessageBase : Object, IReportMessageResult, INotifyPropertyChanged
Constructors
MessageBase(MessageDisplayPosition, Author, MessageType, DateTime)
Initializes a new instance of the MessageBase class.
Declaration
public MessageBase(MessageDisplayPosition displayPosition, Author author, MessageType messageType, DateTime creationDate = null)
Parameters
MessageDisplayPosition
displayPosition
|
Author
author
|
MessageType
messageType
|
System.DateTime
creationDate
|
Properties
Author
AutoReport
Gets or sets a value that indicates whether the message will automatically report results. Setting it to true will force any properties that are marked with ReportResult attribute to raise the ReportMessageResult event of RadChat.
Declaration
public bool AutoReport { get; set; }
Property Value
System.Boolean
|
Implements
CloseAfterReport
Gets or sets a value that indicates whether the message will be removed after it reports a result.
Declaration
public bool CloseAfterReport { get; set; }
Property Value
System.Boolean
|
Implements
CreationDate
Gets the time when the message was created.
Declaration
public DateTime CreationDate { get; }
Property Value
System.DateTime
|
DisplayPosition
Gets the DisplayPosition.
Declaration
public MessageDisplayPosition DisplayPosition { get; }
Property Value
MessageDisplayPosition
|
MessageType
Gets the MessageType.
Declaration
public MessageType MessageType { get; set; }
Property Value
MessageType
|
PostResultInline
Gets or sets a value that indicates whether response action should create a text inline message with its result. The formatted text result can be found and modified in ReportMessageResult's event arguments.
Declaration
public bool PostResultInline { get; set; }
Property Value
System.Boolean
|
Implements
ReportActions
Gets the collection of ReportActions that are associated with the message. The default UI implementation will visualize them as buttons.
Declaration
public RadObservableCollection<ResponseAction> ReportActions { get; }
Property Value
RadObservableCollection<ResponseAction>
|
Implements
ReportViewModel
Gets the view model instance that handles report results. It is initialized in accordance of the MessageDisplayPosition of the message.
Declaration
public ReportResultViewModel ReportViewModel { get; }
Property Value
ReportResultViewModel
|
Methods
OnPropertyChanged(String)
Raises the PropertyChanged event.
Declaration
protected void OnPropertyChanged(string propertyName)
Parameters
System.String
propertyName
|
SubscribeToMessageResult(Action<Object, MessageResultEventArgs>)
Subscribes to child response actions.
Declaration
protected virtual void SubscribeToMessageResult(Action<object, MessageResultEventArgs> callBack)
Parameters
System.Action<System.Object, MessageResultEventArgs>
callBack
|
ValidateMessageDisplayPosition()
Validates whether the chosen DisplayPosition is supported by the message.
Declaration
protected void ValidateMessageDisplayPosition()
Events
PropertyChanged
Event is raised when a property of the type changes its value.
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
System.ComponentModel.PropertyChangedEventHandler
|