我正在用列表視圖創建一個簡單的模式對話框。當我將項目添加爲組的一部分時,項目將顯示,但組標題不會顯示。我一直試圖在構造函數中使用一些虛擬對象。下面是代碼: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
{
}
}
看來VisualStyles已被禁用您的應用程序。你可以使用['Application.EnableVisualStyles()']來啓用它(https://msdn.microsoft.com/en-us/library/system.windows.forms.application.enablevisualstyles(v = vs.110).aspx)在你的應用程序類的主要方法。 –