2012-02-26 71 views
0

嗨,我有一個文本框,其文本最初通過數據綁定填充到一個值。Silverlight將視圖中的值傳遞給ViewModel MVVM

<TextBox Name="EmployeeName" Text="{Binding Employee.Name}" Grid.Row="0" Grid.Column="1" VerticalAlignment="Center" Margin="8,0,0,0"/> 

而且我有一個刷新按鈕,應該將其重置爲其原始值並保存按鈕以保存更改。

<Button Name="RefreshEmployeeName" Content="Refresh" Grid.Column="2" Grid.Row="0" Width="50" Height="25" Command="{Binding RefreshEmployeeNameCommand}" CommandParameter="{Binding Text, ElementName=EmployeeName}"/> 

    <Button Name="SaveEmployeeName" Content="Refresh" Grid.Column="2" Grid.Row="0" Width="50" Height="25" Command="{Binding SaveEmployeeNameCommand}" CommandParameter="{Binding Text, ElementName=EmployeeName}"/> 

我使用MVVM lightand在我的視圖模型我創建2個RelayCommands

SaveEmployeeNameCommand = new RelayCommand(SaveEmployee); 

    RefreshEmployeeNameCommand = new RelayCommand(RefreshEmployee); 

    private void SaveEmployee() 
    { 

//如何從文本框中的值(命令參數)這裏 }

回答

1

我不認爲你需要將該名稱作爲CommandParameter傳遞。只要員工的名稱屬性具有公共設置者,並且您在文本框上使用了雙向綁定,就可以使用this.Employee.Name獲取員工的姓名。

+0

我有我的視圖模型中的員工作爲公共參數。在我的SaveEmplyee函數中。 this.Employee.Name不會給出文本框的更改值。你能否詳細說明解決方案。 – 2012-02-26 01:01:16

+0

嘗試 Andrew 2012-02-26 01:07:57

+0

如何在單擊重置按鈕時將更改的值重置爲其原始值。 – 2012-02-26 01:51:32

相關問題