https://www.codeproject.com/Articles/30905/WPF-DataGrid-Practical-Examples