基本 DataListView 实现






3.32/5 (13投票s)
它实现了一个用于数据查看的对象,其想法是从 ListView 派生而来。
引言
这是我的第一篇文章,请不要太苛刻 :). 目的在于制作一个类似于 Microsoft 应用程序或“魔术控件”中提出的数据查看控件的基础。 因此,主要目标是外观定义和基本功能。
主要构想
主要想法是扩展一个 ListView
,并使用它的属性。 自定义它以仅显示列表,将只读权限禁止为 false
,并将全行选择设置为 true
。 此外,使其能够处理数据源,只需将一个新对象添加到控件中以保存数据,并创建一些函数来处理给定的数据源。 为数据源中的每一行在控件中创建一个行... 实现一些属性以使控件具有功能,例如:SelectedItem
或 SelectedItems[]
。
没什么难的……除了拦截行绘制事件。 如果想要更漂亮的绘制,这就是一个大问题。 因此,代码必须拦截绘制项目消息并对其进行自定义处理。 为了拦截此消息,必须设置控件样式,以便将所需的消息传递给您,而不是默认处理。
为了使控件有用,我必须实现一些基本的表格样式……如果可以这样称呼的话 :). 有一些函数可以轻松地实现所有这些功能。
该控件易于使用,就像 DataGrid
一样
DataSet dataSet = new DataSet();
DataListView dataListView = new DataListView();
// let windows designer place the control (dataListView) on the screen...
// initialize dataSet with some data...
dataListView.DataSource = dataSet; // show the data on the control
dataListView.DataMember = "TableNameInDataSet"; // set the data member
而不是结束语
这段代码并非旨在成为“最好的”,它易于理解,并且可以在所有方面得到大力改进。 我以我通常的陈述结束这篇文章:“我希望您能理解……”。
无论如何,如果您喜欢我的想法并且决定使用我的控件,您可以随意根据自己的意愿对其进行修改,但您可以在关于窗口中提到我 :)