TextRange.Save Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Uloží aktuální výběr do zadaného datového proudu v zadaném formátu dat.
Přetížení
Save(Stream, String) |
Uloží aktuální výběr do zadaného datového proudu v zadaném formátu dat. |
Save(Stream, String, Boolean) |
Uloží aktuální výběr do zadaného datového proudu v zadaném formátu dat s možností zachování vlastních objektů TextElement. |
Save(Stream, String)
Uloží aktuální výběr do zadaného datového proudu v zadaném formátu dat.
public:
void Save(System::IO::Stream ^ stream, System::String ^ dataFormat);
public void Save (System.IO.Stream stream, string dataFormat);
member this.Save : System.IO.Stream * string -> unit
Public Sub Save (stream As Stream, dataFormat As String)
Parametry
- stream
- Stream
Prázdný zapisovatelný datový proud pro uložení aktuálního výběru.
- dataFormat
- String
Formát dat pro uložení aktuálního výběru jako. Aktuálně podporované formáty dat jsou Rtf, Text, Xamla XamlPackage.
Výjimky
stream
nebo dataFormat
je null
.
Zadaný formát dat není podporován.
-nebo
Obsah načtený z stream
neodpovídá zadanému formátu dat.
Příklady
Následující příklad ukazuje použití Save metoda.
// 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;
}
' 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.
Private Function BoldFormatStream(ByVal inputStream As Stream, ByVal dataFormat As String) As Stream
' A text container to read the stream into.
Dim workDoc As New FlowDocument()
Dim selection As New TextRange(workDoc.ContentStart, workDoc.ContentEnd)
Dim outputStream As Stream = 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) Then
selection.Load(inputStream, dataFormat)
End If
Catch e As Exception ' Load failure return a null stream.
Return outputStream
End Try
' Apply Bold formatting to the selection, if it is not empty.
If Not selection.IsEmpty Then
selection.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold)
End If
' Save the formatted selection to a stream, and return the stream.
If selection.CanSave(dataFormat) Then
selection.Save(outputStream, dataFormat)
End If
Return outputStream
End Function
Poznámky
Když tato metoda vrátí, stream
je ponechána otevřená a aktuální pozice v rámci stream
není definována.
V rámci operace uložení může být obsah v aktuálním výběru převeden do formátu dat určeného dataFormat
.
Viz také
Platí pro
Save(Stream, String, Boolean)
Uloží aktuální výběr do zadaného datového proudu v zadaném formátu dat s možností zachování vlastních objektů TextElement.
public:
void Save(System::IO::Stream ^ stream, System::String ^ dataFormat, bool preserveTextElements);
public void Save (System.IO.Stream stream, string dataFormat, bool preserveTextElements);
member this.Save : System.IO.Stream * string * bool -> unit
Public Sub Save (stream As Stream, dataFormat As String, preserveTextElements As Boolean)
Parametry
- stream
- Stream
Prázdný zapisovatelný datový proud pro uložení aktuálního výběru.
- dataFormat
- String
Formát dat pro uložení aktuálního výběru jako. Aktuálně podporované formáty dat jsou Rtf, Text, Xamla XamlPackage.
- preserveTextElements
- Boolean
true
zachovat vlastní objekty TextElement; jinak false
.
Výjimky
Nastane, když stream
nebo dataFormat
je null
.
Nastane, když zadaný formát dat není podporován. Může být vyvolána také v případě, že obsah načtený z stream
neodpovídá zadanému formátu dat.
Poznámky
Při preserveTextElements
false
se vlastní objekty TextElement ukládají jako známé typy TextElement. Předpokládejme například, že vytvoříte vlastní TextElement s názvem Heading1
, který dědí z Paragraph. Když zavoláte tuto metodu s preserveTextElements
nastavenou na false
, Heading1
se při uložení TextRange převede na Paragraph. Při volání této metody s preserveTextElements
nastavena na true
, Heading1
je uložena bez převodu. Chcete-li zachovat vlastní textové prvky, musí být dataFormat
nastavena na DataFormats.Xaml.
Save(Stream, String, Boolean) je zaveden v rozhraní .NET Framework verze 3.5. Další informace naleznete v tématu verze a závislosti.