2014-02-22 48 views
0

這就是我的主程序GUI的樣子,我試圖做的是在C#中使用wpf創建提醒應用程序。C#wpf - 在執行過程中添加到xaml文件

我要使用哪個將要顯示的數據給用戶,即他們目前擁有的提醒滾動瀏覽器。

每次用戶增加了一個提醒,它會補充一點:

我所想要做的是,當過用戶添加一個新的提醒,就會有一個新的集添加到滾動查看器的數據。

實現此目標的最佳方法是什麼?

我能夠保存xaml數據並在執行過程中添加它嗎?

感謝你想要做什麼幫助

+0

感謝您正確編輯圖像 – user2469515

回答

1

無法通過動態XAML中,而是通過使用templated控制,能夠接受動態數據來完成。例如,您不會考慮使用列表框作爲標籤,因爲您沒有在列表中顯示正確的數據?

但是,列表框只是一個傳送帶,用於存儲您想要的內容。假設你想要的不僅僅是一個標籤,還有三個標籤。通過綁定到適當的結構,您可以獲得所需的內容。

下面是一個例子

<ListBox ItemsSource="{Binding myReminders }"> 
    <ListBox.ItemTemplate> 
    <DataTemplate> 
     <StackPanel> 
     <TextBlock Text="{Binding Path=ReminderName}" /> 
     <TextBlock Text="{Binding Path=Description}"/> 
     <TextBlock Text="{Binding Path=Priority}"/> 
     </StackPanel> 
    </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

一旦綁定到我的提醒數據對象的列表(該列表可以動態改變),我們都必須表現任何格式提醒的能力,我們想。人們只是使用上述來適當地設計它。 (查看WPF的Templating Overview就是一個很好的例子)。

模板的使用在其他控件中完成,因此如果列表框不符合您的喜好,請查看其他模板化控件。

+0

感謝您的回答。那麼,它將使用該模板爲MyReminders中的每個項目創建一個新的列表框? – user2469515

+0

@ user2469515是的,把你的項目放到一個'ObservableCollection'中,這樣當一個項目被添加時,它會通知活頁夾它已經改變了。或者,如果不在可觀察的集合中,只需重新綁定到列表即可達到相同的效果。 – OmegaMan

+0

非常感謝您的幫助。 – user2469515

相關問題