ConfirmationType 列舉型別
定義值,這些值指定能出現在 ContextNode 物件上的型別確認。
這個列舉型別的 FlagsAttribute 屬性允許將其成員值以位元組合的方式來使用。
命名空間: Microsoft.Ink
組件: Microsoft.Ink.Analysis (在 Microsoft.Ink.Analysis.dll 中)
語法
'宣告
<FlagsAttribute> _
Public Enumeration ConfirmationType
'用途
Dim instance As ConfirmationType
[FlagsAttribute]
public enum ConfirmationType
[FlagsAttribute]
public enum class ConfirmationType
/** @attribute FlagsAttribute */
public enum ConfirmationType
public enum ConfirmationType
成員
成員名稱 | 說明 | |
---|---|---|
None | 指定不套用確認。InkAnalyzer 可以視需要隨意變更內容節點或任何其子代 (Descendant)。 | |
NodeTypeAndProperties | 指定 InkAnalyzer 無法變更所指定之內容節點的型別或任何屬性。 | |
TopBoundary | 指定 InkAnalyzer 將不執行作業,包括加入筆墨或與其他會使 TopBoundary 移動超過目前頂端界限的 ContextNode 合併。例如: |
備註
您只能對 InkWord 和 InkDrawing 型別的 ContextNode 物件使用 NodeTypeAndProperties,否則會擲回 InvalidOperationException (英文) 例外狀況。
範例
下列範例是 Panel (英文) (變數名稱為 theNotesPanel) 上 MouseUp (英文) 事件的事件處理常式,它會透過 InkCollector (變數名稱為 theInkCollector) 收集筆墨。應用程式有 Boolean (英文) (變數名稱為 confirmMode),是由 MenuItem (英文) (變數名稱為 confirmMenuItem) 設定。在「確認」模式下,使用者按一下文字即可加以確認 (或如果已確認節點即可關閉確認)。這個範例會將 MouseUp (英文) 滑鼠放開事件轉換成筆墨座標,並使用 HitTest 和 FindNodesOfType 找出適當的節點。找到節點之後,就會呼叫 Confirm 以切換確認。最後,會使應用程式離開「確認」模式。
Private Sub theNotesPanel_MouseUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles theNotesPanel.MouseUp
If Me.confirmMode = True Then
' Translate coordinates into ink dimensions
Dim hitPoint As New Point(e.X, e.Y)
Dim panelGraphics As Graphics = Me.theNotesPanel.CreateGraphics()
Me.theInkCollector.Renderer.PixelToInkSpace(panelGraphics, hitPoint)
panelGraphics.Dispose()
' Find the strokes that the user selected
Dim selectedStrokes As Strokes = Me.theInkCollector.Ink.HitTest(hitPoint, 10)
' Find the ink word nodes that correspond to those strokes
Dim selectedNodes As ContextNodeCollection = _
Me.theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.InkWord, _
selectedStrokes)
' Toggle the confirmation type on these nodes
Dim selectedNode As ContextNode
For Each selectedNode In selectedNodes
If selectedNode.IsConfirmed(ConfirmationType.NodeTypeAndProperties) = True Then
selectedNode.Confirm(Microsoft.Ink.ConfirmationType.None)
Else
selectedNode.Confirm(Microsoft.Ink.ConfirmationType.NodeTypeAndProperties)
End If
Next selectedNode
' No longer in "confirm" mode
Me.confirmMode = False
Me.ConfirmMenuItem.Checked = False
Me.theInkCollector.Enabled = True
End If
End Sub
private void theNotesPanel_MouseUp(object sender, MouseEventArgs e)
{
if (this.confirmMode)
{
// Translate coordinates into ink dimensions
Point hitPoint = new Point(e.X, e.Y);
Graphics panelGraphics = this.theNotesPanel.CreateGraphics();
this.theInkCollector.Renderer.PixelToInkSpace(panelGraphics, ref hitPoint);
panelGraphics.Dispose();
// Find the strokes that the user selected
Strokes selectedStrokes = this.theInkCollector.Ink.HitTest(hitPoint, 10);
// Find the ink word nodes that correspond to those strokes
ContextNodeCollection selectedNodes =
this.theInkAnalyzer.FindNodesOfType(Microsoft.Ink.ContextNodeType.InkWord,
selectedStrokes);
// Toggle the confirmation type on these nodes
foreach (ContextNode selectedNode in selectedNodes)
{
if (selectedNode.IsConfirmed(ConfirmationType.NodeTypeAndProperties))
{
selectedNode.Confirm(Microsoft.Ink.ConfirmationType.None);
}
else
{
selectedNode.Confirm(Microsoft.Ink.ConfirmationType.NodeTypeAndProperties);
}
}
// No longer in "confirm" mode
this.confirmMode = false;
this.confirmMenuItem.Checked = false;
this.theInkCollector.Enabled = true;
}
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求。
版本資訊
.NET Framework
支援版本:3.0