Tôi có WPF ComboBox bên trong một mẫu dữ liệu (rất nhiều combobox trong listbox) và tôi muốn xử lý nút enter. Nó sẽ dễ dàng nếu nó được ví dụ một nút - Tôi sẽ sử dụng Command + Relative ràng buộc đường dẫn vv Thật không may, tôi không có ý tưởng làm thế nào xử lý nhấn phím với một lệnh hoặc làm thế nào để thiết lập xử lý sự kiện từ mẫu. Bất kỳ đề xuất nào?Xử lý sự kiện trong DataTemplate
9
A
Trả lời
4
Tôi đã giải quyết được sự cố của mình bằng cách sử dụng trình xử lý sự kiện thông thường nơi tôi đi qua cây trực quan, tìm nút tương ứng và gọi đó là lệnh. Nếu bất kỳ ai khác có cùng một vấn đề, vui lòng đăng nhận xét và tôi sẽ cung cấp thêm chi tiết về việc thực hiện.
UPD
Đây là giải pháp của tôi:
Tôi tìm kiếm trên cây trực quan cho một nút và hơn lệnh liên quan đến nút thực thi.
View.xaml:
<ComboBox KeyDown="ComboBox_KeyDown"/>
<Button Command="{Binding AddResourceCommand}"/>
View.xaml.cs:
private void ComboBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
var parent = VisualTreeHelper.GetParent((DependencyObject)sender);
int childrenCount = VisualTreeHelper.GetChildrenCount(parent);
for (int i = 0; i < childrenCount; i++)
{
var child = VisualTreeHelper.GetChild(parent, i) as Button;
if (null != child)
{
child.Command.Execute(null);
}
}
}
}
10
Bạn có thể sử dụng EventSetter theo phong cách bạn đang thiết lập các mẫu với:
<Style TargetType="{x:Type ListBoxItem}">
<EventSetter Event="MouseWheel" Handler="GroupListBox_MouseWheel" />
<Setter Property="Template" ... />
</Style>
0
Bài viết này có cách để định tuyến bất kỳ Event
đến Command
http://nerobrain.blogspot.nl/2012/01/wpf-events-to-command.html
Các vấn đề liên quan
- 1. cách thêm xử lý sự kiện để kiểm soát trong datatemplate trong từ điển tài nguyên
- 2. Xử lý tăng sự kiện trong Java
- 3. Xử lý sự kiện trong Haskell
- 4. Cách xử lý sự kiện trong MVVM
- 5. Xử lý sự kiện trong DART
- 6. Thêm xử lý sự kiện riêng trước xử lý sự kiện khác
- 7. Sự khác biệt giữa Trình xử lý sự kiện & Trình xử lý sự kiện trong Java là gì?
- 8. Xử lý sự kiện nền công nhân
- 9. Xử lý DataGridHyperlinkColumn Nhấp vào Sự kiện
- 10. Delphi và ngăn sự kiện xử lý
- 11. Xử lý sự kiện với Jython & Swing
- 12. IE8 onclick xử lý sự kiện
- 13. xử lý sự kiện trước Page_Load
- 14. Đang chờ sự kiện được xử lý
- 15. Các xử lý sự kiện để chọn
- 16. jQuery Plugin: Xử lý sự kiện
- 17. Xử lý sự kiện thoát khỏi WPF
- 18. WeakReference và xử lý sự kiện
- 19. Có thể liên kết Sự kiện trong DataTemplate Silverlight không?
- 20. Sự khác biệt, nếu có, giữa trình xử lý sự kiện và trình xử lý sự kiện?
- 21. Điều kiện DataTemplate
- 22. Trong .NET, chuỗi sự kiện nào sẽ được xử lý?
- 23. Nhận xử lý khi nghe sự kiện trong JavaScript
- 24. xử lý sự kiện được chọn trong twitter bootstrap Typeahead?
- 25. Xử lý ngoại lệ Java trong "sự kiện"
- 26. Xử lý các sự kiện OnNavigatedFrom/OnNavigatedTo trong ViewModel
- 27. Xử lý sự kiện thay đổi URL trong js
- 28. Xử lý tất cả các sự kiện chuột trong Android
- 29. Xử lý sự kiện CTRL + C trong Node.js trên Windows
- 30. Ctrl + C ngắt sự kiện xử lý trong Linux