4#include "ItemsControl.h"
6#include "ObservableCollection.h"
414 void _SetCount(
int count);
434 DWORD _GetExtendedListViewStyle();
467 bool _DeleteColumn(
int index);
479 void _UpdateColumns();
486 void _ColumnsCollectionChangedHandler(
非模板列表接口,提供基于Variant的元素访问
Definition IList.h:11
支持集合变更通知的接口
Definition INotifyCollectionChanged.h:61
值转换器接口
Definition IValueConverter.h:14
Win32图像列表句柄的RAII包装
Definition ImageList.h:15
表示可用于呈现一组项的控件
Definition ItemsControl.h:13
列表视图编辑状态结束事件参数类型
Definition RoutedEventArgs.h:419
列表视图
Definition ListView.h:85
const Property< bool > Editable
是否允许编辑
Definition ListView.h:151
void Refresh(bool refreshColumns=true)
刷新控件以反映数据源的当前状态
virtual void OnSetBackColor(Color color, bool redraw) override
设置背景颜色
const Property< bool > MultiSelect
是否允许多选
Definition ListView.h:126
virtual void OnSetItemCheckState(int index, bool checked)
设置指定索引项复选框的选中状态
virtual bool OnNotify(NMHDR *pNMHDR, LRESULT &result) override
接收到WM_NOTIFY后调用该函数
virtual IList * GetDefaultItemsSource() override final
获取默认数据源,当ItemsSource未设置时使用该数据源
virtual void OnHeaderItemChanged(NMHEADERW *pNMH)
接收到内部Header控件发送的HDN_ITEMCHANGEDW通知时调用该函数
virtual void GetDisplayInfo(int index, const Variant &item, NMLVDISPINFOW *pNMInfo)
获取指定子项要显示的信息
virtual void SetSelectedIndex(int index) override
设置选中项索引
virtual void OnHeaderItemDoubleClicked(NMHEADERW *pNMH)
鼠标左键双击列标题时调用该函数
virtual void OnCurrentItemsSourceChanged(IList *oldItemsSource, IList *newItemsSource) override
当前数据源改变时调用该函数
virtual void OnCurrentItemsSourceCollectionChanged(const NotifyCollectionChangedEventArgs &args) override
当数据源集合发生变更时调用该函数
const ReadOnlyProperty< ObservableCollection< ListViewColumn > * > Columns
列集合
Definition ListView.h:116
const ReadOnlyProperty< int > TopIndex
当前列表框页面第一个子项的索引
Definition ListView.h:141
List< int > GetSelectedIndices()
获取所有选中项的索引
virtual void OnGetItemCheckState(int index, bool &checked)
获取指定索引项的复选框是否选中
virtual void OnCheckStateChanged(int index)
复选框选中状态发生改变
virtual void OnItemClicked(NMITEMACTIVATE *pNMIA)
鼠标左键单击某一项时调用该函数
virtual int GetSelectedIndex() override
选中项的索引,当无选中项时为-1
const Property< bool > CheckBoxes
是否在第一列显示复选框
Definition ListView.h:136
virtual void OnGetDispInfo(NMLVDISPINFOW *pNMInfo)
当OnNotified接收到LVN_GETDISPINFOW通知时调用该函数
virtual bool OnItemPrePaint(NMCUSTOMDRAW *pNMCD, bool subItem, LRESULT &result) override
绘制子项前调用该函数
virtual void GetCheckBoxRect(int index, RECT &rect)
获取指定索引项的复选框矩形
const ReadOnlyProperty< ObservableCollection< ListViewItem > * > Items
列表项集合,当未设置ItemsSource时使用该集合作为数据源
Definition ListView.h:111
virtual void OnItemChanged(NMLISTVIEW *pNMLV)
列表项某些属性发生变化时调用该函数
ImageList GetImageList(ListViewImageList imageList)
获取列表视图的图像列表
int GetItemIndexFromPoint(const Point &point)
获取指定点处子项的索引
virtual void OnItemDoubleClicked(NMITEMACTIVATE *pNMIA)
鼠标左键双击某一项调用该函数
const Property< bool > GridLines
是否显示网格线
Definition ListView.h:121
virtual void OnCheckBoxClicked(int index)
复选框被点击时调用该函数
bool EnsureVisible(int index, bool partialOK=false)
确保指定索引的项可见
bool GetItemCheckState(int index)
获取指定索引项的复选框是否选中
bool EditItem(int index)
进入编辑模式,调用该函数前需要将Editable属性设为true
const Property< bool > ShareImageLists
允许将同一图像列表与多个列表视图控件配合使用,控件销毁时若该属性为true则不会销毁图像列表
Definition ListView.h:146
virtual void OnApplyEdit(int index, const std::wstring &newText)
应用编辑结果时调用该函数
virtual bool OnNotified(NMHDR *pNMHDR, LRESULT &result) override
父窗口接收到WM_NOTIFY后且父窗口OnNotify函数返回false时调用发出通知控件的该函数
virtual void OnSetTextColor(Color color, bool redraw) override
设置文本颜色
const ReadOnlyProperty< int > SelectedCount
多选状态下可通过该属性获取选中项的个数
Definition ListView.h:131
virtual void OnEndEdit(ListViewEndEditEventArgs &args)
编辑状态结束后调用该函数
virtual void OnHeaderItemClicked(NMHEADERW *pNMH)
鼠标左键单击列标题时调用该函数
virtual void OnHeaderItemChanging(NMHEADERW *pNMH)
接收到内部Header控件发送的HDN_ITEMCHANGINGW通知时调用该函数
virtual bool OnPrePaint(NMCUSTOMDRAW *pNMCD, LRESULT &result) override
绘制控件前调用该函数
HIMAGELIST SetImageList(ListViewImageList imageList, HIMAGELIST value)
设置列表视图的图像列表
void SetItemCheckState(int index, bool value)
设置指定索引项复选框的选中状态
集合变更事件参数类型
Definition INotifyCollectionChanged.h:33
通用变体类型容器,类型擦除地持有任意类型对象
Definition Variant.h:36
SimpleWindow框架的顶级命名空间,所有公共类型、控件、枚举和工具函数均定义于此。
Definition Alignment.h:4
ListViewColumnAlignment
列表视图的列对齐方式
Definition ListView.h:24
ListViewImageList
列表视图的图像列表枚举
Definition ListView.h:14
列表视图的列信息
Definition ListView.h:33
ListViewColumnAlignment alignment
列对齐方式
Definition ListView.h:44
std::wstring header
列标题
Definition ListView.h:35
ListViewColumn(const wchar_t *header, double width=100, ListViewColumnAlignment alignment=ListViewColumnAlignment::Left)
构造函数,默认宽度100,左对齐
double width
列宽度
Definition ListView.h:38
int imageIndex
关联图像在图像列表中的索引,-1表示无图像
Definition ListView.h:41
ListViewColumn(const std::wstring &header, double width=100, ListViewColumnAlignment alignment=ListViewColumnAlignment::Left)
构造函数,默认宽度100,左对齐
列表视图的子项信息
Definition ListView.h:58
int imageIndex
关联图像在图像列表中的索引,-1表示无图像
Definition ListView.h:63
ListViewItem(const ListViewItem &other)=default
默认拷贝构造函数
ListViewItem()=default
默认构造函数
ListViewItem(std::initializer_list< std::wstring > subItems)
使用初始化列表构造
List< std::wstring > subItems
子项文本列表,索引0为主项文本
Definition ListView.h:60
ListViewItem(ListViewItem &&other) noexcept
移动构造函数
bool checked
复选框选中状态
Definition ListView.h:66
表示相对于左上角的点坐标
Definition Point.h:15