Variant 结构
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重要
此 API 不符合 CLS。
表示一个可解释为多个类型的对象。
public value class Variant
public value class Variant
struct Variant
[System.CLSCompliant(false)]
public struct Variant
[<System.CLSCompliant(false)>]
type Variant = struct
Public Structure Variant
- 继承
-
Variant
- 属性
示例
此示例显示了 MPF ViewFilter 类如何使用此 Variant 结构将传入变量对象转换为字符。
namespace Microsoft.VisualStudio.Package
{
[CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(true)]
public class ViewFilter
: IVsTextViewFilter
, IVsTextViewEvents
, IOleCommandTarget
, IDisposable
{
public virtual void HandlePostExec(ref Guid guidCmdGroup,
uint nCmdId,
uint nCmdexecopt,
IntPtr pvaIn,
IntPtr pvaOut)
{
if (guidCmdGroup == VsMenus.guidStandardCommandSet2K) {
VsCommands2K cmd = (VsCommands2K)nCmdId;
char ch = '\0';
if (cmd == VsCommands2K.TYPECHAR && pvaIn != IntPtr.Zero) {
Variant v = Variant.ToVariant(pvaIn);
ch = v.ToChar();
// Do something with the character
}
}
}
}
}
注解
此版本的变量结构特定于托管包框架 (MPF) 语言服务类,并且设计为主要将 variant 转换为字符。 更具体地说,如果变量具有类型,则 VT_UI2 将变量对象转换为字符。
此结构实际上仅用于 MPF 语言服务类(类的方法)中的一个位置 HandlePreExec ViewFilter 。 此结构用于在命令类型为时将传入变体转换为字符 TYPECHAR 。
调用方说明
这是一个结构,可被视为变量类型。 它的功能有限,主要用于从变体对象转换为字符。
属性
| Value |
确定此对象的值 Variant 。 |
| Vt |
确定对象的类型 Variant 。 |
方法
| ToChar() | |
| ToVariant(IntPtr) |
将给定的变体对象转换为 Variant 类对象。 |