我創建了一個名爲EventMenu的小型UserControl。我參考它在一個更大的觀點使用:無法聲明性地設置自定義UserControl的DataContext
<views:EventMenu
Grid.Row="1"
DataContext="{Binding DataContext.ServicingEventsMenuViewModel}"
/>
(我也試過DataContext="{Binding Path=DataContext.ServicingEventsMenuViewModel}"
)。
但是,沒有從綁定的數據上下文的內容顯示在控制(從控制的XAML文件確實出現靜態內容)。我相信控件不綁定DataContext。
在後面的構造爲用戶控件的代碼,我已經做到了這一點:
public EventMenu()
{
InitializeComponent();
if (DataContext == null)
{
Console.WriteLine("No data context!");
}
}
,它確實表明,在DataContext爲空。
什麼我需要做的,以確保DataContext設置在我的用戶?
是否較大視圖的DataContext的有屬性'ServicingEventsMenuViewModel'? – 2014-09-21 19:24:08
@LarryLustig如果它包含'ServicingEventsMenuViewModel'屬性,那麼很可能你不需要綁定路徑中的'DataContext'部分。基本上,在你的情況下,它會嘗試找到這樣'DataContext.DataContext.ServicingEventsMenuViewModel'屬性,因爲它會嘗試採取從當前'DataContext'屬性值 – dkozl 2014-09-21 19:47:41
也對與綁定任何故障給定的路徑,你可以查看輸出窗口看看那裏是否有任何錯誤報告。 – 2014-09-21 19:56:51