wpf - WPF 中的扩展器控件
问题描述
我需要将我的按钮控件从下面替换为 Expander 控件。
<Button Grid.Row="14" Grid.ColumnSpan="2" Content="{Binding InspectionLayoutAdvancedButtonContent, Mode=OneWay}" HorizontalAlignment="Stretch" Margin="10,3" MinWidth="120"
Command="{Binding Path=AdvancedCommand}" Visibility="{Binding SelectedEditingLayoutViewModel.AdvancedButtonVisibility}"
CommandParameter="{Binding ElementName=gridAdvances}"/>
我不知道如何将 Command 添加到 Expander 控件,所以当 Expander 展开时,我想使用参数 gridAdvanced 执行 AdvancedCommand。
实现这一点的最佳方法是什么?
谢谢。
解决方案
我建议将 mm8 的解决方案与 Freggar建议的事件Expanded一起使用
<UserControl
xmlns:i="clr-amespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"/>
<Expander>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Expanded" >
<i:InvokeCommandAction Command="{Binding AdvancedCommand}" CommandParameter="{Binding ElementName=gridAdvances}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Expander>
<UserControl>
推荐阅读
- hibernate - 执行 HQL 时遇到问题:TransientObjectException
- git - 使用 Docker 为 Node.js 应用程序创建 Jenkins 文件
- html - Phantomjs - 在 Ubuntu 服务器上将文本渲染为图像
- android - 通过 Admob 看不到非个性化横幅广告
- python - 如何使用结构化流 Pyspark 在 Amazon S3 上写入流?
- angular - 为什么 ngxClipboard 抱怨需要输入元素?
- php - 响应 GetExpressCheckoutDetails 调用 PayPal NVP API 时缺少 SHIPPINGOPTION 值
- django - 将 Windows Django 项目文件夹设置为 OS-X/Linux 样式
- python - 无法在 Linux 上打开 Pyspark Shell
- python - 什么我无法在当前目录中导入经过验证的代码?