2014-03-03 52 views
0

我目前正在將我的列表框綁定到DTO。遵循MVVM模式,我如何與從列表框中選擇的內容進行交互。使用MVVM與綁定DTO進行交互

我想是這樣的[1作爲「文件名」

If (Listbox.Selecteditem[1] == "samplefilename") 
{ Messagebox.Show("Files matched"} 

但是,這是使用MVVM做到底如何?我必須創建SelectedValue綁定/屬性嗎?

public class FilesDTO : IDTO 
{ 
    public int Id { get; set; } 
    public string FileName { get; set; } 
    public string FileExtension { get; set; } 
    public byte[] FileArray { get; set; } 
} 

回答

2

你只需要添加一個「SelectedFileDTO」到你的ViewModel和你的XAML中,確保它被設置爲TwoWay。當它在視圖中更改時,您的SelectedFileDTO設置器將在您的ViewModel中命中。

<ListBox ItemsSource={Binding Files} SelectedItem={Binding SelectedFileDTO, Mode=TwoWay}/> 

public FilesDTO SelectedFileDTO 
{ 
    get... 
    set... 
} 
0

是的,你應該SelectedValue屬性設置爲DependencyProperty綁定。然後,只要你想使用它,它就在你的處置。您也可以使用DependencyProperty更改的事件。