Ink.ClipboardCopy 方法 (Rectangle, InkClipboardFormats, InkClipboardModes)
将指定矩形中包含的 Strokes 集合复制到 Clipboard。
命名空间: Microsoft.Ink
程序集: Microsoft.Ink(在 Microsoft.Ink.dll 中)
语法
声明
Public Function ClipboardCopy ( _
copyRectangle As Rectangle, _
formats As InkClipboardFormats, _
modes As InkClipboardModes _
) As IDataObject
用法
Dim instance As Ink
Dim copyRectangle As Rectangle
Dim formats As InkClipboardFormats
Dim modes As InkClipboardModes
Dim returnValue As IDataObject
returnValue = instance.ClipboardCopy(copyRectangle, _
formats, modes)
public IDataObject ClipboardCopy(
Rectangle copyRectangle,
InkClipboardFormats formats,
InkClipboardModes modes
)
public:
IDataObject^ ClipboardCopy(
Rectangle copyRectangle,
InkClipboardFormats formats,
InkClipboardModes modes
)
public IDataObject ClipboardCopy(
Rectangle copyRectangle,
InkClipboardFormats formats,
InkClipboardModes modes
)
public function ClipboardCopy(
copyRectangle : Rectangle,
formats : InkClipboardFormats,
modes : InkClipboardModes
) : IDataObject
参数
- copyRectangle
类型:System.Drawing.Rectangle
包含要复制到 Clipboard 的 Strokes 集合的矩形。
- formats
类型:Microsoft.Ink.InkClipboardFormats
InkClipboardFormats 枚举的一个成员,该成员指定 Ink 对象的格式。默认值为 Default。
- modes
类型:Microsoft.Ink.InkClipboardModes
InkClipboardModes 枚举的一个成员,该成员指定 Ink 对象的模式。默认值为 Default。
返回值
类型:System.Windows.Forms.IDataObject
返回要创建的数据对象。默认值为 nullnull 引用(在 Visual Basic 中为 Nothing)(在 Microsoft Visual Basic.NET 中为 Nothing)。
备注
如果矩形裁剪 Stroke 对象,则在复制的数据中裁剪相应的 Stroke 对象。
如果希望复制 Ink 对象的所有属性,将整个 Ink 对象复制到 Clipboard 会很有用。若要将 Ink 对象复制到 Clipboard,请调用 ClipboardCopy(Strokes, InkClipboardFormats, InkClipboardModes) 方法,并将 strokes 参数设置为 null(在 Visual Basic .NET 中为 Nothing)。
如果在 InkClipboardModes 模式下使用 ClipboardCopy(Rectangle, InkClipboardFormats, InkClipboardModes) 方法,则会删除拆分为两个或多个笔画的 Stroke 对象,并在其位置上添加新笔画。
Ink.InkDeleted 事件是根据 Stroke 对象在 Strokes 集合中的索引生成的。例如,如果要删除索引 0、1、2、3、5 和 6 处的 Stroke 对象,则生成两个事件。一个事件是为索引 0、1、2 和 3 处的 Stroke 对象生成的,另一个事件是为索引 5 和 6 处的 Stroke 对象生成的。即,为每个连续集生成一个事件。这也适用于 InkAdded 事件;但是,内部算法确定新添加的 Stroke 对象在 Strokes 集合中的索引,并影响如何激发 InkAdded 事件。
如果从事件处理程序中查询 Strokes 集合的 Count 属性,结果是整个操作添加的 Stroke 对象的总数,包括尚未生成事件的 Stroke 对象。
警告
为避免因使用 InkClipboardModes 标志可能导致的内存泄漏,请调用 Clipboard 对象的 System.Windows.Forms.Clipboard.SetDataObject(System.Object) 方法。如果上一次调用 ClipboardCopy 方法时使用了枚举 InkClipboardModes 中的 DelayedCopy 标志,则必须在应用程序退出前完成此操作。
安全说明: |
---|
如果在部分信任环境下使用,此方法需要 UIPermissionClipboard.OwnClipboard 权限。有关更多信息,请参见Security And Trust。 |
示例
此 C# 示例将所有墨迹 从 Rectangle 结构 theRectangle 复制到 Clipboard 的 InkCollector 对象 theInkCollector。
try
{
theInkCollector.Ink.ClipboardCopy(theRectangle,
InkClipboardFormats.Default, InkClipboardModes.Copy);
}
catch
{
// Place exception handling code here.
}
此 Visual Basic .NET 示例将所有墨迹 从 Rectangle 结构 theRectangle 复制到 Clipboard 的 InkCollector 对象 theInkCollector。
Try
theInkCollector.Ink.ClipboardCopy(theRectangle,
InkClipboardFormats.Default, InkClipboardModes.Copy)
Catch
'Place exception handling code here.
End Try
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。
版本信息
.NET Framework
受以下版本支持:3.0