tôi muốn thiết lập một phong cách trên tất cả các TextBox điều khiển của tôi mà không được sau khi nó nhận được tập trung bàn phím:Cuộc gọi hàm trong mã XAML?
1) Thay đổi màu nền
2) Gọi .SelectAll() để làm nổi bật tất cả các văn bản
tôi có điều này cho đến nay:
<Style TargetType="TextBox">
<Style.Triggers>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="#FFFFD1D9"/>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
có cách nào cũng gọi .SelectAll()
? Cảm ơn.
+1 Câu trả lời xuất sắc. Hầu như chính xác những gì tôi đã viết. Cá nhân tôi sẽ thay đổi cơ thể của phương thức để chỉ đơn giản là '((TextBoxBase) mục tiêu) .SelectAll()' để ném một ngoại lệ dễ hiểu nếu tài sản được sử dụng sai. Từ quan điểm QA, điều này tốt hơn trong thời gian dài hơn là âm thầm bỏ qua các lỗi như vậy: Bạn bắt các lỗi của mình lên phía trước thay vì để chúng ẩn nấp ẩn trong nhiều năm. –
@Ray Burns: Tôi đồng ý. Đó là một thói quen xấu mà tôi đang cố gắng tránh xa. Tôi đã chỉnh sửa câu trả lời của mình. – Dennis
Cảm ơn vì điều đó - nó hoạt động hoàn hảo. FYI, cho bất cứ ai muốn thực hiện điều này cho một PasswordBox: thực hiện một lớp PasswordBoxBehaviour riêng biệt và thay thế tất cả các lần xuất hiện của TextBoxBase bằng PasswordBox. – BCA