Table of Contents

Class SectionModuleBuilder

Namespace
HeyBox
Assembly
HeyBox.Net.Core.dll

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

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

Constructors

SectionModuleBuilder()

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

public SectionModuleBuilder()

SectionModuleBuilder(ITextNodeBuilder)

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

public SectionModuleBuilder(ITextNodeBuilder firstText)

Parameters

firstText ITextNodeBuilder

位于段落左侧的文本节点构建器。

SectionModuleBuilder(ITextNodeBuilder, ButtonNodeBuilder)

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

public SectionModuleBuilder(ITextNodeBuilder text, ButtonNodeBuilder button)

Parameters

text ITextNodeBuilder

位于段落左侧的文本节点构建器。

button ButtonNodeBuilder

位于段落右侧的按钮节点构建器。

SectionModuleBuilder(ITextNodeBuilder, ITextNodeBuilder)

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

public SectionModuleBuilder(ITextNodeBuilder firstText, ITextNodeBuilder secondText)

Parameters

firstText ITextNodeBuilder

位于段落左侧的文本节点构建器。

secondText ITextNodeBuilder

位于段落中部的文本节点构建器。

SectionModuleBuilder(ITextNodeBuilder, ITextNodeBuilder, ITextNodeBuilder)

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

public SectionModuleBuilder(ITextNodeBuilder firstText, ITextNodeBuilder secondText, ITextNodeBuilder thirdText)

Parameters

firstText ITextNodeBuilder

位于段落左侧的文本节点构建器。

secondText ITextNodeBuilder

位于段落中部的文本节点构建器。

thirdText ITextNodeBuilder

位于段落右侧的文本节点构建器。

SectionModuleBuilder(ITextNodeBuilder, ImageNodeBuilder)

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

public SectionModuleBuilder(ITextNodeBuilder text, ImageNodeBuilder image)

Parameters

text ITextNodeBuilder

位于段落左侧的文本节点构建器。

image ImageNodeBuilder

位于段落右侧的图片节点构建器。

SectionModuleBuilder(ImageNodeBuilder, ITextNodeBuilder)

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

public SectionModuleBuilder(ImageNodeBuilder image, ITextNodeBuilder text)

Parameters

image ImageNodeBuilder

位于段落右侧的文本节点构建器。

text ITextNodeBuilder

位于段落左侧的图片节点构建器。

SectionModuleBuilder(IList<INodeBuilder>)

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

public SectionModuleBuilder(IList<INodeBuilder> paragraph)

Parameters

paragraph IList<INodeBuilder>

段落元素。

Fields

MaxParagraphCount

获取模块的最大段落数量。

public const int MaxParagraphCount = 5

Field Value

int

Properties

Paragraph

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

public IList<INodeBuilder> Paragraph { get; set; }

Property Value

IList<INodeBuilder>

Type

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

public ModuleType Type { get; }

Property Value

ModuleType

Methods

AddNode(INodeBuilder)

添加一个元素到文本模块。

public SectionModuleBuilder AddNode(INodeBuilder field)

Parameters

field INodeBuilder

要添加的按钮元素。

Returns

SectionModuleBuilder

当前构建器。

AddNode<T>(Action<T>?)

添加一个元素到文本模块。

public SectionModuleBuilder AddNode<T>(Action<T>? button = null) where T : INodeBuilder, new()

Parameters

button Action<T>

一个包含对要添加的新创建的元素的配置的操作。

Returns

SectionModuleBuilder

当前构建器。

Type Parameters

T

Build()

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

public SectionModule Build()

Returns

SectionModule

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

Exceptions

ArgumentNullException

Paragraphnull

ArgumentException

Paragraph 是一个空列表。

ArgumentException

Paragraph 的元素数量超过了 MaxParagraphCount

InvalidOperationException

Paragraph 的元素不符合模块的规范。支持的模式有:
[文本][文本, 文本/按钮/图片][文本, 文本, 文本][图片, 文本]

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.

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