- Chính vì vậy ta nghỉ đến ngay CommandBinding để làm điều đó
- Cách tạo CommandBinding cho Button
public static RoutedCommand Command_Button_Delete_Click = new RoutedCommand();
public void ExecutedCommand_Button_Delete_Click(object sender, ExecutedRoutedEventArgs e)
{
//thực hiện xóa 1 Item đang được Selected
...
}
public void CanExecuteCommand_Button_Delete_Click(object sender, CanExecuteRoutedEventArgs e)
{
//Enable button Delete khi SelectedIndex >= 0 ;
e.CanExecute = ListBox_ImageThumbnails.SelectedIndex >= 0;
}
- Kết nối CommandBinding vào Button
private void AddCommand(Button btn, ICommand command, ExecutedRoutedEventHandler exe, CanExecuteRoutedEventHandler canExe)
{
CommandBinding cmd = new CommandBinding(command, exe, canExe);
this.CommandBindings.Add(cmd);
btn.Command = command;
}
private void SetupCommandBinding()
{
//add Command vao trong Button Delete
AddCommand(Button_Delete, Command_Button_Delete_Click, ExecutedCommand_Button_Delete_Click, CanExecuteCommand_Button_Delete_Click);
...
}
- Sau khi hàm SetupCommandBinding() được gọi thì các lệnh CanExecuteCommand , và ExecutedCommand của Button Delete sẽ có hiệu lực
No comments:
Post a Comment