2010-04-19 67 views
0

我正在嘗試顯示項目列表(這些項目的樣式和控件模板在其他地方定義),我希望能夠添加/刪除儘可能多的項目至。由於我沒有無限的屏幕房地產,我顯示這些在一個ListBox控件。使用XAML在WPF窗體中顯示項目列表

這是屏幕,我要約會:

alt text

什麼事情發生是這樣的。當我點擊新建按鈕時,我希望項目出現在空白區域。

所以,現在的問題:

我想,當我點擊New ...按鈕,一個新的項目出現在列表框(概述)。使用XAML可以做到這一點嗎?我試圖從界面上分離業務邏輯,所以如果有一些方法可以在XAML中實現這一點,我將不勝感激。如果沒有,我可以使用我在C#中創建的自定義模板項目,以便它將顯示爲模板在列表框中指定的而不是像正常的ListBoxItem

在此先感謝!

+0

這裏有什麼確切的問題?你有技術問題,還是關於你的應用程序的設計? – 2010-04-19 06:08:49

+0

我想這個問題的技術方面在下面的評論中隱含地回答了。爲了澄清,我問是否有一些使用XAML添加項目的方式,我猜並不是這樣。 – TerrorAustralis 2010-04-19 06:41:35

回答

4

我認爲實現這一目標的唯一方法是將新的(空)項目添加到概述列表視圖數據綁定到的列表中。

如果在創建新項目時涉及到任何業務邏輯,您應該要求業務邏輯層爲您創建新項目,否則按照通常的方式實例化對象。

+0

謝謝,我最終推薦了從我的業務邏輯到前端的數據項,正如你所建議的:) – TerrorAustralis 2010-04-19 06:47:47

0

您可以使用ObesrvableCollection達到此目的。使用雙向綁定來顯示在輸入時應該在列表中顯示的細節。

+0

感謝您的評論,我的印象是ObservableCollection必須是根元素,在這種情況下不能我在這個假設中錯了嗎? – TerrorAustralis 2010-04-19 06:45:47