Tôi muốn kiểm soát khả năng hiển thị của Control A nếu Control B bị ẩn và ngược lại. Ngay bây giờ tôi có chuyển đổi này:Ràng buộc khả năng hiển thị của phần tử khác - và đảo ngược
public class InvertVisibilityConverter : IValueConverter {
public Object Convert(Object value, Type targetType, Object parameter, CultureInfo culture) {
if (targetType == typeof(Visibility)) {
Visibility vis = (Visibility)value;
return vis == Visibility.Collapsed ? Visibility.Visible : Visibility.Collapsed;
}
throw new InvalidOperationException("Converter can only convert to value of type Visibility.");
}
public Object ConvertBack(Object value, Type targetType, Object parameter, CultureInfo culture) {
throw new Exception("Invalid call - one way only");
}
}
Và XAML này:
<Button Visibility="{Binding ElementName=btn1, Path=Visibility, Converter={StaticResource InvertVisibilityConverter}}">Btn2</Button>
Những công trình. Tôi chỉ tự hỏi nếu có một cách trực tiếp hơn trong WPF/Silverlight để thực hiện điều này? Tôi không ngại có một công cụ chuyển đổi, tôi chỉ muốn chắc chắn rằng không có cách nào tốt hơn tôi không biết.
Có nhiều ngữ cảnh hơn :) Cảm ơn bạn đã trả lời. –