diff --git a/README/重要说明.md b/README/重要说明.md new file mode 100644 index 0000000..a31bd52 --- /dev/null +++ b/README/重要说明.md @@ -0,0 +1,554 @@ +# 重要说明 + +## `InkCanvas` + +### `InkCanvasEditingMode` 枚举 + +`EditingMode` 属性有以下几种值,每个值对应不同的功能和行为: + +1. **`Ink`** + + - 这是默认值,允许用户绘制笔迹(手写)到画布上。 + - 用户可以使用手写笔或触摸屏在 `InkCanvas` 上绘制。 + - 适用于需要自由绘画的情况。 + - **举例**:用户在画布上用手写笔画出图形或写字。 + +2. **`EraseByPoint`** + + - 允许用户通过触摸或手写笔直接擦除指定位置的笔迹。 + - 在擦除模式下,用户可以通过点击或在某个区域上划过来擦除画布上的笔迹。 + - **举例**:点击画布上的笔迹来删除它。 + +3. **`EraseByStroke`** + + - 允许用户通过选择并删除特定的笔迹(线条)来擦除。 + - 在此模式下,用户通过拖动手写笔(或鼠标)来选中一条笔迹,然后删除它。 + - **举例**:用户可以通过点击或拖动鼠标擦除整条笔迹。 + +4. **`Select`** + + - 允许用户选择画布上的一条或多条笔迹。 + - 用户可以通过绘制一个框或点击已有的笔迹来选择它们。这些选中的笔迹可以进行后续的操作,比如移动、修改等。 + - **举例**:用户选择一条已绘制的线条进行编辑或移动。**`None`** + + - 不允许任何编辑操作。即画布处于只读模式,用户无法绘制、擦除或选择任何内容。 + - **举例**:画布只是一个静态展示,不能进行任何手写或操作。各种模式的实际应用场景: + +1. `Ink` 模式 + - 用于自由绘图应用,例如绘画软件,用户可以随意画出线条、形状,甚至手写文字。 +2. `EraseByPoint` 和 `EraseByStroke` 模式 + - 用于擦除功能,在用户绘制之后需要修改或删除内容时,提供擦除笔迹的功能。 +3. `Select` 模式 + - 在用户完成绘制后,可以用来选择、移动或修改笔迹。它适合在用户绘制完后需要对某些元素进行调整的情况,比如在草图应用中编辑单个图形。 +4. `None` 模式 + - 用于展示或演示,画布上不允许任何编辑操作。常用于只读视图,例如用于展示静态图片或其他内容,用户不能进行任何绘画或修改。 + +## WPF中的事件 + +在 WPF 中,事件是用户交互的一个重要部分,WPF 的事件机制包括常见的用户界面交互事件(如按钮点击、鼠标点击、键盘输入等),以及比普通事件更复杂的“隧道”和“冒泡”事件。下面我会详细说明如何在 XAML 中使用事件(如 `Click` 和 `MouseUp` 事件),并介绍如何通过委托创建事件。同时,我还会讲解事件的“隧道”和“冒泡”机制,并通过代码示例进行说明。 + +### 一、WPF 中的事件:Click 和 MouseUp 事件 + +#### 1. **Click 事件** + +`Click` 事件通常与按钮控件等交互元素关联。当用户点击按钮时,`Click` 事件被触发。 + +**XAML 示例:** + +```xml +