¿Cómo crear un editor para la vista de base de datos (con uniones) en Windows Forms / WPF?

¿Cuál sería la forma más sencilla de crear un editor rápido para algunos datos en la base de datos en WPF / WinForms, donde los datos están representados por una Vista en la base de datos de SQL Server?

Di que tengo una mesaPerson { id int, name nvarchar(max), GenderID int, CityID int}, donde GenderID y CityID es una referencia en las tablas Género y Ciudad. En el editor, la Persona aparecería como cuadro de texto para el nombre, cuadro combinado para el género (seleccionando los nombres de los géneros en la tabla de Género) y lo mismo para la columna de la ciudad.

¿Hay algo fácil que pueda hacer para que algún control / código genere esto? Si me gustaría seleccionar solo datos, entonces WinForms DataGridView o WPF DataGrid pueden generar una columna para cada propiedad y mostrar una fila para cada objeto en una colección. -

¿Hay algún tipo de control mágico similar, que podría hacer esto para una vista de base de datos, si las relaciones están definidas por una clave externa?

Me parece que miles de desarrolladores han enfrentado este tipo de problema: crear rápidamente una GUI para editar filas de bases de datos con relaciones con otras tablas, por lo que debería haber algún tipo de solución universalmente aceptada. ¿O está todo el mundo haciendo esto en el código? O, si hay una herramienta para esto en otro idioma, no en C #, no en Windows Forms, como dBase.

Respuestas a la pregunta(2)

Su respuesta a la pregunta