WPF扩展器触发器

编程入门 行业动态 更新时间:2024-10-27 18:33:15
本文介绍了WPF扩展器触发器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有2个并排扩展器。 一次只能打开1个。

I have 2 expanders side by side. Only 1 can be opened at a time.

我想为他们直接在其定义中写触发器 ,例如:

I want to write Triggers for them directly in their definition like this:

<Expander x:Name="MenuOverView" ExpandDirection="Left"> <Expander.Triggers> <Trigger Property="IsExpanded" Value="False" SourceName="MenuDetailed"> <Setter Property="IsExpanded" Value="True" TargetName="MenuOverView" /> </Trigger> </Expander.Triggers> </Expander> <Expander x:Name="MenuDetailed" ExpandDirection="Right"> <Expander.Triggers> <Trigger Property="IsExpanded" Value="False" SourceName="MenuOverView"> <Setter Property="IsExpanded" Value="True" TargetName="MenuDetailed" /> </Trigger> </Expander.Triggers> </Expander>

这当然是错误的代码。请问我该怎么做?

This is of course a bad code.. How can I do that please?

推荐答案

好的,我认为这是不可能的。 在这种情况下,我提供了一种解决方案:

OK I think that's not possible. I provide a solution in that case:

<!--Add this to the resources dictionary--> <conv:BoolInverterConverter x:Key="boolInvertorConverter" />

...

<Expander x:Name="MenuOverView" ExpandDirection="Left" IsExpanded="{Binding ElementName=MenuDetailed, Converter={StaticResource boolInvertorConverter}, Path=IsExpanded}" VerticalContentAlignment="Center" >

...

转换器代码:

public class BoolInverterConverter : System.Windows.Data.IValueConverter { #region IValueConverter Members public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { bool i; if (bool.TryParse(value.ToString(), out i) == false) return null; return !i; } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { bool i; if (bool.TryParse(value.ToString(), out i) == false) return null; return !i; } #endregion }

享受!

更多推荐

WPF扩展器触发器

本文发布于:2023-11-06 04:51:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1562756.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:触发器   WPF

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!