更改自适应卡Bot框架的分隔符属性

我在自适应卡的文本块中使用Separator属性,该属性正常工作,但是我需要更新Separator的粗细和线条颜色,以下是代码,但未得到体现。我正在使用bot框架v3

SeparatorConfig separatorConfig = new SeparatorConfig();

separatorConfig.LineThickness = 2;
separatorConfig.LineColor = "Black";

card.Body.Add(new AdaptiveTextBlock()
{
    Text = QuestionValue,Size = AdaptiveTextSize.Default,Weight = AdaptiveTextWeight.Bolder,Wrap = true,Separator = true,});
lvxh88 回答:更改自适应卡Bot框架的分隔符属性

仅附带一提,凯尔(Kyle)的答案是正确的,如果您不是呈现卡片的人,则无法更改分隔符。

就在您的代码示例上,您应该真正了解Adaptive Card模板。 https://docs.microsoft.com/en-us/adaptive-cards/templating/

它使整个故事变得容易得多。

,

首先,您需要了解自适应卡的用途。编写自适应卡时,您有意放弃对该卡外观的许多控制。这是因为自适应卡旨在适应其环境,因此它们看起来就像属于呈现它们的任何应用程序一样。您试图对分隔符进行的控制实际上是不属于卡作者的事情之一,而是取决于卡 renderer

第二,您需要在代码中考虑一些危险信号。您正在使用的AdaptiveCards库实际上包含卡片作者可以使用的代码以及卡片渲染器可以使用的代码。 SeparatorConfig类位于AdaptiveCards.Rendering名称空间中,这意味着它应由渲染器使用。还要注意,在创建SeparatorConfig对象并将其值分配给其属性时,实际上并没有将其传递到AdaptiveTextBlock或对其进行任何操作。

仅当您可以控制客户端应用程序时,才可以配置分隔符。如果使用的是Microsoft Teams之类的其他客户端应用程序,则必须接受分隔符的外观不是您要配置的外观。如果要创建自己的客户端应用程序,则可以使用HostConfig自定义分隔符。

有关自适应卡的更多信息,请参见my latest blog post

本文链接:https://www.f2er.com/3160288.html

大家都在问