private static bool GetState(ListViewGroup group, ComCtl32.ListViewGroupState state) { var groupId = GetGroupId(group); if (groupId < 0) { return(false); } return((SendMessage(new HandleRef(group.ListView, group.ListView.Handle), (uint)ComCtl32.ListViewMessage.LVM_GETGROUPSTATE, (IntPtr)groupId, new IntPtr((int)state)).ToInt32() & (int)state) != 0); }
private static void SetState(ListViewGroup group, ComCtl32.ListViewGroupState state, bool value) { var groupId = GetGroupId(group); if (groupId >= 0) { var lvgroup = new ComCtl32.LVGROUP(ComCtl32.ListViewGroupMask.LVGF_STATE); { lvgroup.SetState(state, value); SendMessage(new HandleRef(group.ListView, group.ListView.Handle), ComCtl32.ListViewMessage.LVM_SETGROUPINFO, groupId, lvgroup); } } }