Можно ли установить свойство DataContext пользовательского элемента управления после загрузки пользовательского элемента управления и принудительно повторно связать пользовательский элемент управления?
Если вам нужно проделать дополнительную работу при изменении DataContext, вы можете использовать пользовательский DependencyProperty и связать его со свойством DataContext. Используйте DependencyPropertyChangedEventHandler, чтобы узнать, когда DP изменился.
Более подробное объяснение см. В моем блоге на http://msmvps.com/blogs/theproblemsolver/archive/2008/12/29/how-to-know-when-the-datacontext-changed-in-your-control.aspx.
Я почти уверен, что если вы просто установите текстовый код еще раз, он будет перепривязан
Другой способ принудительного повторного связывания, например:
MyDataGrid.SetBinding(DataGrid.ItemsSourceProperty, MyDataGrid.GetBindingExpression(DataGrid.ItemsSourceProperty).ParentBinding);
Этот метод можно использовать и для DataContext.
Установка свойства DataContext должна вызвать повторное связывание.