CListCtrl CListCtrl只显示已填充的行吗?

时间:2016-04-11 03:58:56

标签: c++ mfc clistctrl

CListCtrl的默认行为是否仅显示当前用空白灰色区域填充的行数?

在我的列表中,我在固定显示区域中有可变数量的条目。如果有比显示区域更多的条目可以保持它没问题,则垂直滑块出现并且一切都正确显示。当我删除条目以便现在没有足够的时间来填充显示区域时,底部的空白区域变为灰色而没有单元格网格。

我想将显示区域设置为完整的单元网格。如果必须的话,我可以使用空行来计算和填充该区域,但我不希望这是默认行为。我原本期望CListCtrl的整个Client区域永久显示为空单元格网格,顶部显示正确的条目数。

我是否必须手动处理这个或者是否有一些CListCtrl的属性我没有设置?

1 个答案:

答案 0 :(得分:0)

您所描述的 IS 列表视图控件的默认行为:

List View control

以下是相关的代码片段:

m_List.InsertColumn(0, L"Col 1", 0, 100);
m_List.InsertColumn(1, L"Col 2", 0, 100);
m_List.InsertItem(0, L"Item 1");
m_List.InsertItem(1, L"Item 2");
ListView_SetExtendedListViewStyle(m_List, LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);

您只需确保使用当前版本的公共控件。