我有一個自定義用戶控件(ChartControl
)我在我的WPF應用程序(MainApp
)和內使用我呈現如下:通知視圖模型時,查看被渲染/實例化
<ContentControl Grid.Row="1" Content="{Binding ChartControl, Mode=OneWay}" />
在啓動MainApp
執行以下在給定的順序:
MainApp查看 MainApp視圖模型 ChartControl視圖模型 ChartControl查看
我從我的MainApp
ViewModel的構造函數中實例化了ChartControl
ViewModel。問題是,在實例化ChartControl
ViewModel之後,我還需要從MainApp
內調用ChartControl
的方法。
我遇到的問題是我需要ChartControl
視圖才能將其作爲其視圖模型的一部分進行調用之前呈現(使其InitializeComponent
執行)。
我認爲一個解決方案可能是從視圖中通知視圖模型,當它完全實例化並設置完畢。這是一個可行的解決方案,如果是的話,我會怎麼做?
總之,我需要在調用匹配viewmodel的方法之前完全設置視圖。我遇到的問題是,在這種情況下,視圖模型首先被實例化,然後才呈現視圖。
任何想法?
感謝
那是什麼方法,爲什麼需要在執行'InitializeComponent'後調用?你究竟想要做什麼?這聽起來像一個[xy問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)對我來說。 –
它將數據系列呈現爲圖表表面上的圖表,並且遇到圖表不顯示的問題。我懷疑這是因爲視圖模型在視圖初始化之前構造了圖表並且可以呈現它。 –
@SriramSakthivel,正如你正確暗示的那樣,這並沒有導致我解決我的問題。我的問題是,當我從託管wpf應用程序的視圖模型構造函數呈現的系列中時,用戶控件中的自定義圖表庫不呈現圖表系列。有關更多詳細信息,請參閱http://stackoverflow.com/questions/29805060/wpf-contentcontrol-not-correctly-rendered-when-not-in-view-not-active。 –