Gets or sets a value indicating whether the current C1PrintDocument should handle Windows messages while generating.

The default value is false.

Namespace:  C1.C1Preview
Assembly:  C1.C1Report.2 (in C1.C1Report.2.dll)

Syntax

C#
[XmlAttributeAttribute("DoEvents")]
[DefaultValueAttribute(false)]
public bool DoEvents { get; set; }
Visual Basic
<XmlAttributeAttribute("DoEvents")> _
<DefaultValueAttribute(False)> _
Public Property DoEvents As Boolean
	Get
	Set

Remarks

Setting this property to true allows users to resize forms, click buttons, etc. while documents are being generated. This makes applications more responsive, and is necessary if you want to provide a "Cancel" button to stop the document generation (otherwise the user wouldn't be able to click the button until the generation is complete).

Setting this property to false will cause documents to generate slightly faster.

The default value for this property is False.

Examples

The code below implements Generate and Cancel buttons attached to a C1PrintDocument. The Generate button checks whether the document is busy before starting to generate it. This is necessary because the user could click the Generate button several times in a row, before the document has a chance to finish generating. (Calling the Generate()()()() method while the component is busy throws an exception.) The "Cancel" button checks whether the document is currently generating, and sets the Cancel property to true if it is:

Copy CodeC#
_doc.DoEvents = true;
private void Generate_Click(object sender, EventArgs e)
{
    if (_doc.BusyState != BusyStateEnum.Ready)
    Console.WriteLine("Cannot generate now, document is busy");
    else 
    _doc.Generate();
}
private void Cancel_Click(object sender, EventArgs e) 
{
    if (_doc.BusyState != BusyStateEnum.Ready) 
        _doc.Cancel = true;
    else 
        Console.WriteLine("Document is not generating, nothing to cancel");
}

See Also