CalculateDocumentVariableEventArgs.Value Property
Specifies the result of the DOCVARIABLE field that fired the event.
Namespace: DevExpress.Blazor.RichEdit
Assembly: DevExpress.Blazor.RichEdit.v24.2.dll
NuGet Package: DevExpress.Blazor.RichEdit
#Declaration
public object Value { get; set; }
#Property Value
Type | Description |
---|---|
Object | A string that is the field result. |
#Remarks
The CalculateDocumentVariable event allows you to calculate a value of the DOCVARIABLE field. The VariableName event argument’s property identifies the processed field. Set the Value
property to the field result value.
<DxRichEdit @bind-Selection="@selection" @ref="@richEdit"
CalculateDocumentVariable="@(async x => await OnCalculateDocumentVariable(x))" />
@code {
DxRichEdit richEdit { get; set; }
Selection selection { get; set; }
protected override Task OnAfterRenderAsync(bool firstRender) {
if (firstRender)
InitializeDocument();
return base.OnAfterRenderAsync(firstRender);
}
async void InitializeDocument() {
/* Surround the code that contains an asynchronous operation with a try-catch block to handle
the OperationCanceledException. This exception is thrown when an asynchronous operation is canceled. */
try {
await richEdit.DocumentAPI.Fields.CreateAsync(richEdit.Selection.CaretPosition, "DOCVARIABLE paragraphCount");
await richEdit.DocumentAPI.AddTextAsync("Number of paragraphs: ");
}
catch (OperationCanceledException e) {
Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
}
}
async Task OnCalculateDocumentVariable(CalculateDocumentVariableEventArgs eventArgs) {
try {
switch (eventArgs.VariableName) {
case "paragraphCount":
var paragraphs = await richEdit.DocumentAPI.Paragraphs.GetAllAsync();
eventArgs.Value = paragraphs.Count.ToString();
break;
default:
break;
}
}
catch (OperationCanceledException e) {
Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
}
}
}