У меня есть приложение Silverlight, использующее Prism, и я использую ContentControl в качестве региона, как показано ниже:
<ContentControl RegionManager.RegionName="Demo"/>
В некоторых редких случаях приложение выдает исключение
"Этот элемент управления связан с регионом, но элемент управления
уже связано с чем-то другим ".
Я проверил библиотеку призмы, и она выдает эту ошибку из метода ContentControlRegionAdapter.Adapt. В этом методе выполняется следующая проверка
if (regionTarget == null)
throw new ArgumentNullException("regionTarget");
bool contentIsSet = regionTarget.Content != null;
if (contentIsSet)
{
throw new InvalidOperationException(Resources.ContentControlHasContentException);
}
В каком сценарии будет установлен contentIsSet?
Также есть ли проблема, если я уберу это условие и установлю представление для содержимого напрямую?