我正在创建一个简单的模式对话框,其中包含一个 ListView 。当我将项目添加为组的一部分时,项目将显示,但组标题不会显示。我一直在尝试在构造函数中使用一些虚拟对象。这是代码:
//Initialize and create columns
public ConfirmDialog(List<ContentFileInfo> files, List<ContentFileInfo> folders, ManagerMain manager)
{
_myFiles = files;
_myFolders = folders;
_manager = manager;
InitializeComponent();
//cbFilter.SelectedIndex = 0;
CreateColumns();
lstChanges.BeginUpdate();
lstChanges.ShowGroups = true;
ListViewGroup test = new ListViewGroup("TestGroup");
ListViewItem item = new ListViewItem {Group = test};
ListViewItem item2 = new ListViewItem();
ListViewItem.ListViewSubItem sub = new ListViewItem.ListViewSubItem();
ListViewItem.ListViewSubItem sub2 = new ListViewItem.ListViewSubItem();
sub.Text = "Item descrip.";
sub2.Text = "Item2 descrip.";
item.Text = "Item name.";
item.SubItems.Add(sub);
item2.Text = "Item2 name.";
item2.SubItems.Add(sub2);
lstChanges.Items.Add(item);
lstChanges.Groups.Add(test);
lstChanges.Items.Add(item2);
lstChanges.EndUpdate();
//GetAllFolders();
//FillListByGroup();
//NotifyOfUnchangedFiles();
}
根据调试器,一切都正确添加:
如果有帮助,这是调用我的对话框的代码:
//Event: Prompt user to approve change request
private void btnPushChanges_Clicked(object sender, EventArgs e)
{
ConfirmDialog dialog = new ConfirmDialog(_cmprController.SelectedFiles, _cmprController.SelectedFolders, this);
try
{
dialog.ShowDialog();
}
catch
{
}
}
最佳答案
在应用程序开头调用 Application.EnableVisualStyles()
应该有助于解决此问题。阅读此https://msdn.microsoft.com/en-us/library/system.windows.forms.listview.showgroups(v=vs.110).aspx的备注部分
关于c# - ListView 显示项目但不显示组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35513853/