2012-02-15 102 views
0

區域適配器我已經使用棱鏡和我使用的是ContentControl中作爲一個區域,類似下面的Silverlight應用程序:棱鏡 - 爲內容控制

<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是true?

如果我刪除該條件並將視圖直接設置爲內容,那麼是否存在任何問題?

回答

0

一種可能的情況

XAML

<ContentControl x:Name="mycontent" RegionManger.RegionName="MycontentRegion"/> 

代碼隱藏

SomeView view = new SomeView();  
mycontent.Content = view; 

在上述情況下,因爲你的ContentControl中與區域相關聯,但某處代碼,你會得到一個錯誤,你設置內容控件的內容。