2011-12-01 38 views
1

我在WPF頁面中有一個StackPanel,並且根據用戶請求,我在其中加載相同的UserControl。現在對於這些用戶控件中的每一個,我需要獲取其中的項目。用戶控件由一個日曆和3個組合框組成。我如何獲得物品?在StackPanel中獲取UserControl的內容

到目前爲止,我有以下幾點: -

foreach (UserControl child in stk.Children) 
{ 

} 

和孩子有需要的內容,但我不能找出如何讓每一個孩子的內容,在數據庫中驗證和存儲。我試過child.FindControl(「combobox1」),但沒有奏效。

感謝您的幫助和時間

+0

你在哪裏調用child.FindControl(「combobox1」)?當你打電話給你時,你是否被孩子裝載? – 2011-12-01 14:06:50

+0

孩子有數據,所以我需要加載用戶控件?像UCPageControl ucPControl =新的UCPageControl?然後將孩子中的數據移到這個ucPControl中? – Johann

+0

不,您不必,但如果在父控件完全加載之前調用它,則child.FindControl(「combobox1」)可以返回null。這就是爲什麼我問你你叫什麼名字?你是否遇到異常或代碼不起作用? – 2011-12-01 19:41:04

回答

0

你可以得到Content的保持。不過,我強烈建議您不要在用戶界面中執行這些操作,並且不應從用戶界面中獲取數據。 UI應該從ViewModel或Model獲取數據,並在需要時更新它們(這是通過Binding實現的)。所以如果你需要這些數據,你的ViewModel應該是看的地方,而不是UI。

+0

嗨Mben我還沒有使用MVVM模式,做一些基本的東西。因此,讓我們說我在頁面中加載控件,我怎樣才能從模型中獲取數據? – Johann