65.9K
CodeProject 正在变化。 阅读更多。
Home

使用快捷方式技巧自动调整列表视图大小

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.40/5 (19投票s)

2003年8月5日

1分钟阅读

viewsIcon

98780

downloadIcon

348

这是一个用一行代码自动调整列表视图列宽的小技巧。


引言

Windows 有许多快捷键,其中一个非常有趣的是自动调整任何网格的列宽,即数字小键盘上的 CTRL 和 "+" 键。要尝试此功能,请尝试将焦点设置到资源管理器的列表视图(例如,通过选择一个文件),然后按住 CTRL 按钮和数字小键盘上的 "+" 按钮,您会看到列移动,直到它们被完美调整,以至于没有文本被它们的宽度隐藏。所以我心想,我能在我的程序中使用这个功能吗?这就是我所做的。

使用代码

现在,要向活动应用程序发送击键,您必须使用 SendKeys.Send 函数。CTRL 字符的代码是 "^",而加号等于 {+}

SendKeys.Send ("^{+}");

演示项目

演示项目是一个简单的程序,用于搜索目录树中的任何文件,我使用了以下代码行来调整列表视图的列
if (chkResizeGrid.Checked)
{
    lstViewFile.Focus();
    SendKeys.Send ("^{+}");
}

我必须将焦点设置到网格,这样我才能确保下一个指令,即 Send 函数,将被列表视图接收。抱歉,但在演示项目中,所有文本和注释都为意大利语。

结论

这是 Francesco Natali 的一个小技巧。

© . All rights reserved.