Table of Contents

Class SectionModuleBuilder

Namespace
Kook
Assembly
Kook.Net.Core.dll

用来构建 SectionModule 模块的构建器。

public class SectionModuleBuilder : IModuleBuilder, IEquatable<SectionModuleBuilder>, IEquatable<IModuleBuilder>
Inheritance
SectionModuleBuilder
Implements
Inherited Members

Constructors

SectionModuleBuilder()

初始化一个 SectionModuleBuilder 类的新实例。

public SectionModuleBuilder()

SectionModuleBuilder(IElementBuilder?, SectionAccessoryMode?, IElementBuilder?)

初始化一个 SectionModuleBuilder 类的新实例。

public SectionModuleBuilder(IElementBuilder? text, SectionAccessoryMode? mode = null, IElementBuilder? accessory = null)

Parameters

text IElementBuilder

文本元素。

mode SectionAccessoryMode?

附加内容的显示模式。

accessory IElementBuilder

附加内容元素。

SectionModuleBuilder(string?, bool, SectionAccessoryMode?, IElementBuilder?)

初始化一个 SectionModuleBuilder 类的新实例。

public SectionModuleBuilder(string? text, bool isKMarkdown = false, SectionAccessoryMode? mode = null, IElementBuilder? accessory = null)

Parameters

text string

文本元素。

isKMarkdown bool

是否为 KMarkdown 格式。

mode SectionAccessoryMode?

附加内容的显示模式。

accessory IElementBuilder

附加内容元素。

Properties

Accessory

获取或设置模块的附加内容。

public IElementBuilder? Accessory { get; set; }

Property Value

IElementBuilder

Mode

获取或设置附加内容的显示模式。

public SectionAccessoryMode? Mode { get; set; }

Property Value

SectionAccessoryMode?

Text

获取或设置模块的文本。

public IElementBuilder? Text { get; set; }

Property Value

IElementBuilder

Type

获取此构建器构建的模块的类型。

public ModuleType Type { get; }

Property Value

ModuleType

Methods

Build()

构建当前构建器为一个 SectionModule 对象。

public SectionModule Build()

Returns

SectionModule

由当前构建器表示的属性构建的 SectionModule 对象。

Exceptions

ArgumentException

Text 不是任何形式的文本元素,包括 PlainTextElementBuilderKMarkdownElementBuilderParagraphStructBuilder

ArgumentException

Accessory 既不是 ImageElementBuilder 也不是 ButtonElementBuilder

InvalidOperationException

ButtonElement 不应位于 Text 的左侧。

Equals(SectionModuleBuilder?)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(SectionModuleBuilder? sectionModuleBuilder)

Parameters

sectionModuleBuilder SectionModuleBuilder

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object?)

Determines whether the specified object is equal to the current object.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current object.

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Serves as the default hash function.

public override int GetHashCode()

Returns

int

A hash code for the current object.

WithAccessory(ButtonElementBuilder)

设置模块的附加内容。

public SectionModuleBuilder WithAccessory(ButtonElementBuilder accessory)

Parameters

accessory ButtonElementBuilder

要设置的附加内容。

Returns

SectionModuleBuilder

当前构建器。

WithAccessory(ImageElementBuilder)

设置模块的附加内容。

public SectionModuleBuilder WithAccessory(ImageElementBuilder accessory)

Parameters

accessory ImageElementBuilder

要设置的附加内容。

Returns

SectionModuleBuilder

当前构建器。

WithAccessory<T>(Action<T>?)

设置模块的附加内容。

public SectionModuleBuilder WithAccessory<T>(Action<T>? action = null) where T : IElementBuilder, new()

Parameters

action Action<T>

一个包含对要设置的附加内容进行配置的操作的委托。

Returns

SectionModuleBuilder

当前构建器。

Type Parameters

T

WithMode(SectionAccessoryMode)

设置附加内容的显示模式。

public SectionModuleBuilder WithMode(SectionAccessoryMode mode)

Parameters

mode SectionAccessoryMode

要设置的附加内容的显示模式。

Returns

SectionModuleBuilder

当前构建器。

WithText(KMarkdownElementBuilder)

设置模块的文本。

public SectionModuleBuilder WithText(KMarkdownElementBuilder text)

Parameters

text KMarkdownElementBuilder

要设置的文本。

Returns

SectionModuleBuilder

当前构建器。

WithText(ParagraphStructBuilder)

设置模块的文本。

public SectionModuleBuilder WithText(ParagraphStructBuilder text)

Parameters

text ParagraphStructBuilder

要设置的文本。

Returns

SectionModuleBuilder

当前构建器。

WithText(PlainTextElementBuilder)

设置模块的文本。

public SectionModuleBuilder WithText(PlainTextElementBuilder text)

Parameters

text PlainTextElementBuilder

要设置的文本。

Returns

SectionModuleBuilder

当前构建器。

WithText(string?, bool)

设置模块的文本。

public SectionModuleBuilder WithText(string? text, bool isKMarkdown = false)

Parameters

text string

要设置的文本。

isKMarkdown bool

是否为 KMarkdown 格式。

Returns

SectionModuleBuilder

当前构建器。

WithText<T>(Action<T>?)

设置模块的文本。

public SectionModuleBuilder WithText<T>(Action<T>? action = null) where T : IElementBuilder, new()

Parameters

action Action<T>

一个包含对要设置的文本进行配置的操作的委托。

Returns

SectionModuleBuilder

当前构建器。

Type Parameters

T

要设置的文本的类型。

Operators

operator ==(SectionModuleBuilder?, SectionModuleBuilder?)

判定两个 SectionModuleBuilder 是否相等。

public static bool operator ==(SectionModuleBuilder? left, SectionModuleBuilder? right)

Parameters

left SectionModuleBuilder
right SectionModuleBuilder

Returns

bool

如果两个 SectionModuleBuilder 相等,则为 true;否则为 false

operator !=(SectionModuleBuilder?, SectionModuleBuilder?)

判定两个 SectionModuleBuilder 是否不相等。

public static bool operator !=(SectionModuleBuilder? left, SectionModuleBuilder? right)

Parameters

left SectionModuleBuilder
right SectionModuleBuilder

Returns

bool

如果两个 SectionModuleBuilder 不相等,则为 true;否则为 false