AnnotationStore.Flush Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Dwingt eventuele aantekeningsgegevens die in interne buffers worden bewaard, af te schrijven naar het onderliggende opslagapparaat.
public:
abstract void Flush();
public abstract void Flush();
abstract member Flush : unit -> unit
Public MustOverride Sub Flush ()
Uitzonderingen
Dispose is opgeroepen in de winkel.
Voorbeelden
In het volgende voorbeeld ziet u hoe u de Flush methode gebruikt wanneer de toepassing de AnnotationServicetoepassing sluit.
// -------------------------- StopAnnotations -------------------------
/// <summary>
/// Disables annotations processing and hides annotations.</summary>
public void StopAnnotations()
{
// If the AnnotationStore is active, flush and close it.
if ( (_annotService != null) && _annotService.IsEnabled )
{
_annotService.Store.Flush();
_annotStream.Flush();
_annotStream.Close();
}
// If the AnnotationService is active, shut it down.
if (_annotService != null)
{
if (_annotService.IsEnabled)
_annotService.Disable();
_annotService = null;
}
}// end:StopAnnotations()
' -------------------------- StopAnnotations -------------------------
''' <summary>
''' Disables annotations processing and hides annotations.</summary>
Public Sub StopAnnotations()
' If the AnnotationStore is active, flush and close it.
If (_annotService IsNot Nothing) AndAlso _annotService.IsEnabled Then
_annotService.Store.Flush()
_annotStream.Flush()
_annotStream.Close()
End If
' If the AnnotationService is active, shut it down.
If _annotService IsNot Nothing Then
If _annotService.IsEnabled Then
_annotService.Disable()
End If
_annotService = Nothing
End If
End Sub
In het volgende voorbeeld ziet u het gebruik van de DeleteAnnotation en Flush methoden.
// ------------------------- DeleteMark_Click -------------------------
void DeleteMark_Click(object sender, RoutedEventArgs e)
{
Annotation ann = ((MenuItem)sender).Tag as Annotation;
_annStore.DeleteAnnotation(ann.Id);
_annStore.Flush();
MenuItem thisMenu = sender as MenuItem;
ContextMenu parentMenu = thisMenu.Parent as ContextMenu;
FrameworkElement dObj =
parentMenu.PlacementTarget as FrameworkElement;
while (!(dObj is StackPanel))
{
dObj = dObj.Parent as FrameworkElement;
}
ListBox collection = dObj.Parent as ListBox;
collection.Items.Remove(dObj);
Util.FlushDispatcher();
}
Opmerkingen
Toepassingen die gebruikmaken van een expliciet opslaan-model kunnen zo nodig rechtstreeks worden ingesteld AutoFlushfalse en aangeroepen Flush .
Toepassingen die een impliciet opslaan-model gebruiken, kunnen instellen dat deze AutoFlushtrueFlush automatisch wordt aangeroepen na elke winkelbewerking (toevoegen, verwijderen of wijzigen).