2012-07-23 63 views

回答

5

您可以在这里找到一个解释:

http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.text.virtualsnapshotpoint%28v=vs.100%29.aspx

虚拟空间是在一行的末尾不加 以“额外”空间线的长度。您可以在 Visual Studio中启用或禁用虚拟空间。当禁用虚拟空间时,按下行末尾的方向键 会使插入符号移至下一行开头的 。启用虚拟空间时,在线条末尾的右箭头键上按 将使插入符号在同一行上向前移动 。

即使在工具 - >选项 - >文本编辑器 - >所有语言 - >常规下的选项“启用虚拟空间”被禁用,虚拟空间可以在写入缩进文本或代码时插入。

如果在缩进行的末尾键入enter,Visual Studio将在新行的开头添加虚拟空格。这些空间是“虚拟的”,因为它们没有被用户输入,并且除非在虚拟空间之后输入内容,否则不会保存在文件中。

这会影响插入符号的位置: 在按下Enter按钮后,“BufferPosition” - 和“VirtualBufferPosition” - CaretPosition属性将会不同。 BufferPosition指向新行中的第0列,VirtualBufferPosition指向插入视觉呈现的位置。

+1

迷人。因此,如果我要查看原始文件并关闭虚拟间距,并在该行后面留出很多空格,则文件将保留文件中的字节,如果虚拟文件是一个文件,则会简单地删除它们(使文件变小)。有点像有意义的数字?然而,如果你有虚拟空间,按右箭头10次,然后说一个评论标签,它会保留空间(将它从虚拟空间转换为真实空间)? 非常感谢顺便说一句! – Chris 2012-08-03 16:22:23

相关问题