InkAnalyzer.AddStroke 方法 (Stroke)
将 Stroke 添加到 InkAnalyzer,并为该笔画分配活动输入线程的区域设置标识符。
命名空间: System.Windows.Ink
程序集: IAWinFX(在 IAWinFX.dll 中)
语法
声明
Public Function AddStroke ( _
strokeToAdd As Stroke _
) As ContextNode
用法
Dim instance As InkAnalyzer
Dim strokeToAdd As Stroke
Dim returnValue As ContextNode
returnValue = instance.AddStroke(strokeToAdd)
public ContextNode AddStroke(
Stroke strokeToAdd
)
public:
ContextNode^ AddStroke(
Stroke^ strokeToAdd
)
public ContextNode AddStroke(
Stroke strokeToAdd
)
public function AddStroke(
strokeToAdd : Stroke
) : ContextNode
参数
- strokeToAdd
类型:System.Windows.Ink.Stroke
要添加到 InkAnalyzer 的 Stroke。
返回值
类型:System.Windows.Ink.ContextNode
已添加 strokeToAdd 的 ContextNode。
备注
InkAnalyzer 将 Stroke 添加到 RootNode 属性的 SubNodes 集合中的一个 UnclassifiedInkNode。为 Stroke (strokeToAdd) 分配活动输入线程上所使用的同一区域设置标识符:然后将 Stroke 添加到包含以相同区域设置标识符作为特征的笔画的第一个 UnclassifiedInkNode。如果不存在这样的 UnclassifiedInkNode,则新建一个 UnclassifiedInkNode,并将 strokeToAdd 添加到新的 UnclassifiedInkNode 中。
此方法将 DirtyRegion 扩展为区域的当前值与所添加笔画的边界框的并集。
如果该笔画已经附加到 InkAnalyzer,则 InkAnalyzer 将引发异常。
示例
下面的示例创建一个新的 InkAnalyzer,并将 StrokesChanged 事件处理程序附加到 InkCanvas(名为 theInkCanvas)上的 Strokes 属性。
theInkAnalyzer = New InkAnalyzer()
AddHandler theInkCanvas.Strokes.StrokesChanged, AddressOf Strokes_StrokesChanged
theInkAnalyzer = new InkAnalyzer();
theInkCanvas.Strokes.StrokesChanged +=
new StrokeCollectionChangedEventHandler(Strokes_StrokesChanged);
下面的示例定义 Strokes_StrokesChanged 事件处理程序;如果笔画已添加到 theInkCanvas,该事件处理程序会将其添加到 theInkAnalyzer 中。如果笔画已从 theInkCanvas 中移除,该事件处理程序也会将其从 theInkAnalyzer 中移除。
' This event occurs whenever a stroke is added, removed, or partially erased
' from the InkCanvas.
Sub Strokes_StrokesChanged(ByVal sender As Object, ByVal e As StrokeCollectionChangedEventArgs)
If e.Added.Count > 0 Then
theInkAnalyzer.AddStrokes(e.Added)
End If
If e.Removed.Count > 0 Then
theInkAnalyzer.RemoveStrokes(e.Removed)
End If
End Sub 'Strokes_StrokesChanged
// This event occurs whenever a stroke is added, removed, or partially erased
// from the InkCanvas.
void Strokes_StrokesChanged(object sender, StrokeCollectionChangedEventArgs e)
{
if (e.Added.Count > 0)
{
theInkAnalyzer.AddStrokes(e.Added);
}
if (e.Removed.Count > 0)
{
theInkAnalyzer.RemoveStrokes(e.Removed);
}
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。
版本信息
.NET Framework
受以下版本支持:3.0
另请参见
参考
InkAnalyzerRemoveStroke()
InkAnalyzerRemoveStrokes()