Có thể sử dụng bộ chuyển đổi giá trị mà không cần phải định nghĩa chúng trước đó làm tài nguyên không?Sử dụng bộ chuyển đổi giá trị trong WPF mà không cần phải xác định chúng là tài nguyên đầu tiên
Ngay bây giờ tôi có
<Window.Resources>
<local:TrivialFormatter x:Key="trivialFormatter" />
</Window.Resources>
và
<Button Width="{Binding Width, ElementName=textBox1, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource trivialFormatter}}" Height="50">
Nó sẽ không được có thể là thay vì phải khai báo tài nguyên trivialFormatter trong Window.Resources, tôi trực tiếp có thể tham khảo nó từ Chiều rộng của nút? Một cái gì đó như
Converter = {local:TrivialFormatter}
Cảm ơn
Bí quyết tuyệt vời với tiện ích mở rộng đánh dấu! Tuy nhiên, trong ví dụ đầu tiên của bạn, bạn không cần phải tạo một phiên bản tĩnh của VC, ví dụ: '{x: Tĩnh cục bộ: SomeConverter.Instance}'? – itowlson
Đây là một gợi ý rất tốt. Khi tạo các trình biến đổi giá trị của riêng bạn, bạn nên luôn yêu cầu chúng chấp nhận một ConverterParameter thay vì có các đặc tính cá thể để bạn có thể sử dụng một cá thể singleton như thế này. Đó là SO dễ dàng hơn nhiều so với việc sử dụng tài nguyên. Tôi thường gọi cho tôi một cái gì đó như {x: tĩnh địa phương: InvertedBooleanConverter.Default} hoặc một cái gì đó. – Josh
@ itowlson - vâng trong trường hợp - Tôi đã chỉnh sửa câu trả lời của mình. Thx cho bắt. – micahtan