TextRange.CanLoad Method

Checks whether the current selection can be loaded with content in a specified data format.

Namespace:  System.Windows.Documents
Assembly:  PresentationFramework (in PresentationFramework.dll)

public bool CanLoad(
	string dataFormat
)

Parameters

dataFormat
Type: System.String

A data format to check for load-compatibility into the current selection. See DataFormats for a list of predefined data formats.

Return Value

Type: System.Boolean
true if the current selection can be loaded with content in the specified data format; otherwise, false.

Use the corresponding Load method to actually load content into the current selection in a specified data format.

The following example demonstrates the use of the CanLoad method.

// This method accepts an input stream and a corresponding data format.  The method 
// will attempt to load the input stream into a TextRange selection, apply Bold formatting 
// to the selection, save the reformatted selection to an alternat stream, and return  
// the reformatted stream.  
Stream BoldFormatStream(Stream inputStream, string dataFormat)
{
    // A text container to read the stream into.
    FlowDocument workDoc = new FlowDocument();
    TextRange selection = new TextRange(workDoc.ContentStart, workDoc.ContentEnd);
    Stream outputStream = new MemoryStream();

    try
    {
        // Check for a valid data format, and then attempt to load the input stream 
        // into the current selection.  Note that CanLoad ONLY checks whether dataFormat 
        // is a currently supported data format for loading a TextRange.  It does not  
        // verify that the stream actually contains the specified format.  An exception  
        // may be raised when there is a mismatch between the specified data format and  
        // the data in the stream.  
        if (selection.CanLoad(dataFormat))
            selection.Load(inputStream, dataFormat);
    }
    catch (Exception e) { return outputStream; /* Load failure; return a null stream. */ }

    // Apply Bold formatting to the selection, if it is not empty. 
    if (!selection.IsEmpty)
        selection.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);

    // Save the formatted selection to a stream, and return the stream. 
    if (selection.CanSave(dataFormat))
        selection.Save(outputStream, dataFormat);

    return outputStream;
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft