Foundations of WPF: An Introduction to Windows Presentation Foundation