如何在Microsoft Bot Framework中添加HTML按钮并实现指定UI?
.NET环境下Azure Bot Framework自定义UI实现方案
因为你未附上具体参考截图,以下覆盖Bot Framework下三类主流UI需求的可落地实现路径,均可直接在.NET技术栈下使用:
- 仅修改默认Web Chat客户端样式
如果你是用官方Web Chat作为聊天入口,不需要修改后端逻辑,直接在嵌入Web Chat的.cshtml页面配置样式集参数即可覆盖默认UI,比如修改气泡背景、圆角、头像尺寸、输入框样式等,示例配置如下:// 引入Web Chat相关依赖后自定义样式 const styleSet = window.WebChat.createStyleSet({ bubbleBackground: '#e8f0fe', bubbleBorderRadius: '12px', bubbleFromUserBackground: '#dcf8c6', avatarSize: 40, sendBoxBackground: '#f7f7f7' }); // 初始化Web Chat时传入自定义styleSet window.WebChat.renderWebChat({ directLine: window.WebChat.createDirectLine({ token: '你的Direct Line令牌' }), styleSet }, document.getElementById('webchat')); - 实现按钮、表单、列表等富交互结构化UI
直接使用Bot Framework原生支持的自适应卡片(Adaptive Card)即可,.NET后端安装AdaptiveCardsNuGet包后,构造对应结构的卡片对象附加到活动消息中发送,前端Web Chat会自动渲染成对应UI,卡片内的点击、提交事件可直接对接后端Bot的对话逻辑,无需额外开发前端适配代码。 - 完全自定义全量UI界面
如果官方组件无法满足你的设计需求,直接开通Bot的Direct Line通道,你可以自行用.NET Blazor或任意前端框架开发整套聊天UI,所有消息收发直接调用Direct Line接口和Bot后端通信,后端Bot的业务逻辑完全无需修改,UI自由度无限制。
注意:如果你的Bot需要适配多渠道(如Teams、微信公众号等),需注意不同渠道对自适应卡片的支持能力有差异,仅用于Web Chat场景可忽略该兼容问题。
内容的提问来源于stack exchange,提问作者पone
相关产品推荐
相关产品推荐

