Evento InkAnalyzerBase.InkAnalyzerStateChangingBase
Aggiornamento: novembre 2007
Si verifica prima che l'analizzatore dell'input penna risolva le differenze dei risultati dell'analisi in modo che un'applicazione possa sincronizzare i dati con l'analizzatore dell'input penna.
Spazio dei nomi: System.Windows.Ink.AnalysisCore
Assembly: IACore (in IACore.dll)
Sintassi
'Dichiarazione
Public Event InkAnalyzerStateChangingBase As InkAnalyzerStateChangingBaseEventHandler
'Utilizzo
Dim instance As InkAnalyzerBase
Dim handler As InkAnalyzerStateChangingBaseEventHandler
AddHandler instance.InkAnalyzerStateChangingBase, handler
public event InkAnalyzerStateChangingBaseEventHandler InkAnalyzerStateChangingBase
public:
event InkAnalyzerStateChangingBaseEventHandler^ InkAnalyzerStateChangingBase {
void add (InkAnalyzerStateChangingBaseEventHandler^ value);
void remove (InkAnalyzerStateChangingBaseEventHandler^ value);
}
/** @event */
public void add_InkAnalyzerStateChangingBase (InkAnalyzerStateChangingBaseEventHandler value)
/** @event */
public void remove_InkAnalyzerStateChangingBase (InkAnalyzerStateChangingBaseEventHandler value)
JScript non supporta gli eventi.
Note
Utilizzare questo evento nel caso in cui l'applicazione gestisce una struttura di dati personalizzata, sincronizzata con quella dell'oggetto InkAnalyzerBase. Quando l'analizzatore dell'input penna genera questo evento, l'applicazione deve compilare la proprietà SubNodes di RootNode dell'oggetto InkAnalyzerBase.
L'analizzatore dell'input penna genera questo evento dopo aver generato l'evento ReadyToReconcileBase. Genera questo evento solo durante l'esecuzione dell'analisi in background.
Bloccare la struttura dei dati quando l'analizzatore dell'input penna genera l'evento InkAnalyzerStateChangingBase. Apportare modifiche alla struttura di dati in questa fase dell'analisi può provocare errori nell'analisi dell'input penna e nella sincronizzazione. Sbloccare la struttura dei dati quando l'analizzatore dell'input penna genera l'evento IntermediateResultsUpdatedBase o ResultsUpdatedBase.
Per ulteriori informazioni sulla sincronizzazione dei dati applicazioni con InkAnalyzerBase, vedere Data Proxy with Ink Analysis.
Esempi
Nell'esempio seguente viene definito un metodo, AttachDataProxyEventHandlers, che associa i gestori di eventi del proxy di dati a un oggetto InkAnalyzerBase, baseInkAnalyzer.
Private Sub AttachDataProxyEventHandlers()
' If the document model supports on demand data proxy, then add an
' event handler for the PopulateContextNodeBase event. This event is raised
' when the InkAnalyzerBase accesses a partially populated ContextNodeBase
' created by the document model.
If Me.baseDocumentModel.SupportsOnDemandDataProxy Then
AddHandler Me.baseInkAnalyzer.PopulateContextNodeBase, AddressOf Me.PopulateContextNodeBase
End If
' Add the other data proxy related event handlers. These events are raised
' by the InkAnalyzer to communicate parsing results to the document model.
AddHandler Me.baseInkAnalyzer.ContextNodeCreatedBase, _
AddressOf Me.AddContextNodeBase
AddHandler Me.baseInkAnalyzer.ContextNodeDeletingBase, _
AddressOf Me.RemoveContextNodeBase
AddHandler Me.baseInkAnalyzer.ContextNodeLinkAddingBase, _
AddressOf Me.AddContextNodeLinkBase
AddHandler Me.baseInkAnalyzer.ContextNodeLinkDeletingBase, _
AddressOf Me.RemoveContextNodeLinkBase
AddHandler Me.baseInkAnalyzer.ContextNodeMovingToPositionBase, _
AddressOf Me.MoveContextNodeBaseToPosition
AddHandler Me.baseInkAnalyzer.ContextNodePropertiesUpdatedBase, _
AddressOf Me.UpdateContextNodeBaseProperties
AddHandler Me.baseInkAnalyzer.ContextNodeReparentingBase, _
AddressOf Me.ReparentContextNodeBase
AddHandler Me.baseInkAnalyzer.InkAnalyzerStateChangingBase, _
AddressOf Me.InkAnalyzerBase_StateChanging
AddHandler Me.baseInkAnalyzer.StrokesReparentedBase, _
AddressOf Me.ReparentStroke
AddHandler Me.baseInkAnalyzer.IntermediateResultsUpdatedBase, _
AddressOf Me.BaseResultsAvailable
AddHandler Me.baseInkAnalyzer.ResultsUpdatedBase, _
AddressOf Me.BaseResultsAvailable
End Sub 'AttachDataProxyEventHandlers
private void AttachDataProxyEventHandlers()
{
// If the document model supports on demand data proxy, then add an
// event handler for the PopulateContextNodeBase event. This event is raised
// when the InkAnalyzerBase accesses a partially populated ContextNodeBase
// created by the document model.
if (this.baseDocumentModel.SupportsOnDemandDataProxy)
{
this.baseInkAnalyzer.PopulateContextNodeBase +=
new System.Windows.Ink.AnalysisCore.PopulateContextNodeBaseEventHandler(
this.PopulateContextNodeBase);
}
// Add the other data proxy related event handlers. These events are raised
// by the InkAnalyzer to communicate parsing results to the document model.
this.baseInkAnalyzer.ContextNodeCreatedBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeCreatedBaseEventHandler(
this.AddContextNodeBase);
this.baseInkAnalyzer.ContextNodeDeletingBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeDeletingBaseEventHandler(
this.RemoveContextNodeBase);
this.baseInkAnalyzer.ContextNodeLinkAddingBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeLinkAddingBaseEventHandler(
this.AddContextNodeLinkBase);
this.baseInkAnalyzer.ContextNodeLinkDeletingBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeLinkDeletingBaseEventHandler(
this.RemoveContextNodeLinkBase);
this.baseInkAnalyzer.ContextNodeMovingToPositionBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeMovingToPositionBaseEventHandler(
this.MoveContextNodeBaseToPosition);
this.baseInkAnalyzer.ContextNodePropertiesUpdatedBase +=
new System.Windows.Ink.AnalysisCore.ContextNodePropertiesUpdatedBaseEventHandler(
this.UpdateContextNodeBaseProperties);
this.baseInkAnalyzer.ContextNodeReparentingBase +=
new System.Windows.Ink.AnalysisCore.ContextNodeReparentingBaseEventHandler(
this.ReparentContextNodeBase);
this.baseInkAnalyzer.InkAnalyzerStateChangingBase +=
new System.Windows.Ink.AnalysisCore.InkAnalyzerStateChangingBaseEventHandler(
this.InkAnalyzerBase_StateChanging);
this.baseInkAnalyzer.StrokesReparentedBase +=
new System.Windows.Ink.AnalysisCore.StrokesReparentedBaseEventHandler(
this.ReparentStroke);
this.baseInkAnalyzer.IntermediateResultsUpdatedBase +=
new System.Windows.Ink.AnalysisCore.ResultsUpdatedBaseEventHandler(
this.BaseResultsAvailable);
this.baseInkAnalyzer.ResultsUpdatedBase +=
new System.Windows.Ink.AnalysisCore.ResultsUpdatedBaseEventHandler(
this.BaseResultsAvailable);
}
Nell'esempio seguente viene definito il metodo, InkAnalyzerBase_StateChanging, che gestisce l'evento InkAnalyzerStateChangingBase. Le informazioni relative all'evento vengono passate all'oggetto modello di documento, baseDocumentModel.
In questo esempio non viene fornita la definizione del modello di documento né viene illustrato come vengono elaborate le informazioni passate a tale modello.
''' <summary>
''' Handles the InkAnalyzerBase.InkAnalyzerStateChangingBase event.
''' </summary>
''' <param name="sender">The source of the event.</param>
''' <param name="e">The event data.</param>
Private Sub InkAnalyzerBase_StateChanging( _
ByVal sender As Object, ByVal e As System.EventArgs)
Me.baseDocumentModel.BeginReconcilePhase()
End Sub 'InkAnalyzerBase_StateChanging
/// <summary>
/// Handles the InkAnalyzerBase.InkAnalyzerStateChangingBase event.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The event data.</param>
private void InkAnalyzerBase_StateChanging(
object sender, System.EventArgs e)
{
this.baseDocumentModel.BeginReconcilePhase();
}
Piattaforme
Windows Vista, Windows XP SP2, Windows Server 2003
.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Informazioni sulla versione
.NET Framework
Supportato in: 3.0
Vedere anche
Riferimenti
Spazio dei nomi System.Windows.Ink.AnalysisCore
InkAnalyzerBase.BackgroundAnalyze
InkAnalyzerBase.IntermediateResultsUpdatedBase
InkAnalyzerBase.PopulateContextNodeBase