В MVVM WPF есть возможность сделать биндинг для Grid.Child, что бы элементы к Grid добавлять динамически?
https://pastebin.com/jiwV1X1uК прим. что бы в случайный момент - добавлять <Border><rectangle/></Border> в различных колонках/строках
<Border Grid.Row="0" Grid.Column="0">
<Rectangle Fill="Green" Height="10" Width="10"></Rectangle>
</Border>