skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • NEW: Design Kits for Figma
    • Online Training
    • Document Processing Library
    • Embedded Reporting for web and desktop

    Web

    Kendo UI UI for jQuery UI for Angular UI for React UI for Vue UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI UI for Xamarin

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Test Studio Dev Edition Telerik JustMock

    CMS

    Sitefinity

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Forums
    • Videos
    • Blogs
    • Accessibility and Security
    • Submit a Ticket

    Productivity and Design Tools

    • Visual Studio Extensions
    • Visual Studio Templates
    • Embedded Reporting
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Class MessageBase

Represents the most basic abstraction of message that can report action results.

Inheritance
System.Object
MessageBase
CalendarMessage
CardMessage
CarouselMessage
DataFormMessage
FlightCardMessage
GifMessage
ImageMessage
ListMessage
TextMessage
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

Gets the author of the message.

Declaration
public Author Author { get; }
Property Value
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
IReportMessageResult.AutoReport

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
IReportMessageResult.CloseAfterReport

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
IReportMessageResult.PostResultInline

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
IReportMessageResult.ReportActions

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

Extension Methods

CollectionExtensions.ToEnumerable<T>(T)
EnumerableExtensions.ToEnumerable<T>(T)
Getting Started
  • Install Now
  • Demos
  • SDK Samples Browser
  • Sample Applications
Support Resources
  • Code Library
  • Knowledge Base
  • MVVM Support
  • Videos
  • GitHub SDK Repository
Community
  • Forums
  • Blogs
  • XAML Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.