WPF数据网格自定义:对齐、滚动、性能、可用性

vlf7wbxs  于 2022-11-26  发布在  其他
关注(0)|答案(1)|浏览(149)

我开发了基于桌面的WPF应用程序,它使用SQL Server 2008 R2数据库和ADO.NET实体框架作为数据库和应用程序之间的连接工具。
在其中一个窗口中,需要显示数据库表的内容,并让用户执行一些操作,如向数据库添加新记录、编辑选定的记录和删除选定的记录。
为了做到这一点,我想使用网络邮件的设计模式,换句话说,我希望我的窗口看起来完全一样Gmail的收件箱,在那里用户可以选择信(在我的情况下,行与记录从数据库),点击邮件,并看到其详细信息,点击复选框将选择一行,让用户删除它。
为此,我通过数据绑定机制使用DataGrid控件:

IBindingList Users = ((from d in App.Context.tbl_users
            select new { d.userID, d.userName, d.userPassword }
          ) as IListSource).GetList() as IBindingList;
this.ContentGrid.DataContext = Users;

结果,我得到了一个包含DB中数据的DataGrid表,但我不知道如何:
1.允许用户通过单击复选框并突出显示此行来选择记录
1.通过单击“删除”按钮从DB & DataGrid中删除特别选择的行
1.设置更大的行高/填充,使界面更清晰/大气
我读了一些文章,但找不到解决方案或例子,我的问题。请,你能告诉我相关的文章/网站或建议一个例子如何实现它?

qxsslcnc

qxsslcnc1#

通常使用DataGrid时,单击行或左侧行标题(“gutter”?)将选择该行。
用户可以通过按下delete键删除该行,也可以通过编程(例如,在命令中)从DataGrid.SelectedItem(或SelectedItems,如果启用了多选)中获取所选项目,然后从DB中删除它。
对于行高,请查看DataGrid.RowHeight

相关问题