blazor-devexpress-dot-aiintegration-dot-blazor-dot-chat-dot-dxaichat-593f5d14.md
Specifies the template used to display chat messages.
Namespace : DevExpress.AIIntegration.Blazor.Chat
Assembly : DevExpress.AIIntegration.Blazor.Chat.v25.2.dll
NuGet Package : DevExpress.AIIntegration.Blazor.Chat
[Parameter]
public RenderFragment<BlazorChatMessage> MessageTemplate { get; set; }
| Type | Description |
|---|---|
| RenderFragment<BlazorChatMessage> |
The message template.
|
Use the MessageTemplate property to display any UI render fragment in a chat message. This template changes the message bubble rendering, including paddings and inner content alignment. If you need to place custom content in a message bubble, but retain its default rendering, use the MessageContentTemplate instead.
The template accepts a BlazorChatMessage object as the context parameter.
<DxAIChat CssClass="demo-chat">
<MessageTemplate>
<div class="@GetMessageClasses(context)">
@if(context.Typing) {
<span>Loading...</span>
} else {
<div class="demo-chat-content">
@context.Content
</div>
}
</div>
</MessageTemplate>
</DxAIChat>
@code {
string GetMessageClasses(BlazorChatMessage message) {
if(message.Role == ChatMessageRole.Assistant) {
return "demo-chat-message demo-assistant-message";
} else if(message.Role == ChatMessageRole.User) {
return "demo-chat-message demo-user-message";
} else if(message.Role == ChatMessageRole.Error) {
return "demo-chat-message demo-error-message";
}
return "demo-chat-message";
}
}
.demo-chat {
width: 100%;
height: 400px;
}
.demo-chat .demo-chat-message {
padding: 10px;
border-radius: 10px;
width: calc(100% - 60px);
box-shadow: 0px 2px 6px -2px;
}
.demo-chat .demo-chat-message.demo-assistant-message {
background-color: rgba(76, 255, 0, 0.2);
align-self: self-start;
}
.demo-chat .demo-chat-message.demo-user-message {
background-color: #FFF;
align-self: self-end;
}
.demo-chat .demo-chat-message.demo-error-message {
background-color: rgb(255, 0, 0, 0.2);
align-self: center;
}
Run Demo: AI Chat - Customize Message AppearanceView Example: AI Chat for Blazor - How to add DxAIChat component in Blazor, MAUI, WPF, and WinForms applications
See Also