接著之前的demo;接下來做個重新整理按鈕,用來更新好友名單;這裡需要綁定一個Command給Button;當然這個Command是一個實現了ICommand介面的MainViewModel一個屬性;
1、在ViewModel裡添加RefreshCommand類
using System;using System.Net;using System.Windows;using System.Windows.Controls;using System.Windows.Documents;using System.Windows.Ink;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Animation;using System.Windows.Shapes;namespace HelloWp7.ViewModel{ public class RefreshCommand:ICommand { private readonly MainViewModel _viewModel; public RefreshCommand(MainViewModel viewModel) { _viewModel = viewModel; } public bool CanExecute(object parameter) { return true; } public event EventHandler CanExecuteChanged; public void Execute(object parameter) { _viewModel.Refresh(); } }}
2、在ModelViewModel裡添加重新整理Command屬性
public ICommand RefreshCommand { get; private set; }
3、在ModelViewModel添加Refresh資料處理
public void Refresh() { ObservableCollection<Friend> friends=new ObservableCollection<Friend>( friendService.GetFriendsSet()); this.Friends = friends; // 更新好友名單 }
4、頁面添加重新整理按鈕,並添加事件綁定
<Button Canvas.Left="24" Canvas.Top="556" Command="{Binding RefreshCommand}" Content="Refersh" Height="72"
Name="btnRefresh" Width="160" />
運行後單擊Refresh按鈕後資料列表會更新
下載源碼