[英]A ListView with only one column is showing its items in two columns
我有一列包含四个值(取决于用户计算机上附加屏幕的数量)。 我正在尝试使用 ListView,因为我找到了一个可以将不可用屏幕灰显的示例。
但是,四个项目的列表显示在两列中,如下所示:
屏幕 1 屏幕 3
屏幕 2 屏幕 4
我曾尝试更改列和控件的宽度,但没有成功。
为什么?
我在想,也许第一列是标题列,所以尝试添加两列并将第一列的宽度设置为零。 但它仍然是一样的。
lvScreens.Columns.Add("Col", 0, HorizontalAlignment.Center);
lvScreens.Columns[0].Width = lvScreens.Width - 4;
lvScreens.FullRowSelect = true;
for (int i = 0; i < 4; i++) // I'm limiting the LV to 4 rows
{
ListViewItem lvi = new ListViewItem("Screen " + (i + 1).ToString());
lvScreens.Items.Add(lvi);
if (i < Screen.AllScreens.Count())
{
lvScreens.Items[i].ForeColor = SystemColors.ControlText;
lvScreens.Items[i].Selected = true;
}
else
{
lvScreens.Items[i].ForeColor = SystemColors.GrayText;
lvScreens.Items[i].Selected = false;
}
}
winforms 中的ListView
控件是对winapi listview 控件的封装。 此控件旨在用于 Windows 文件资源管理器并利用多个视图之间的轻松切换:两个图标(大和小)视图、列表和详细信息。
看来您目前的观点有误(不确定是哪一个,请列出?)。
Screen 1 Screen 3
Screen 2 Screen 4
只需将ListView.View设置为Details
模式即可查看具有多个列标题的经典ListView
(对于您实际添加的每一列)。
[Col]
Screen 1
Screen 2
Screen 3
Screen 4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.