UWP 项目不支持触发器元素 (XAML)

2024-02-11

我正在为 Windows 10 开发通用 Windows 应用程序,我发现的第一件事是在设置图像样式时不支持触发器元素 (XAML)。这是我试图实现的代码:

抱歉,我必须在这里使用图像,我是从我的虚拟机获取它的。

这种类型的触发器现在如何在通用 Windows 应用程序中实现?


不,你没有TriggerUWP 中的支持。

解决方法是使用DataTriggerBehavior with a ChangePropertyAction完成完全相同的事情。

  xmlns:Interactivity="using:Microsoft.Xaml.Interactivity"
  xmlns:Core="using:Microsoft.Xaml.Interactions.Core" 

<Button x:Name="MyButton" Width="140" Height="80" IsEnabled="False">
    <Image x:Name="MyImage" Source="Assets/xxx.jpg">
        <Interactivity:Interaction.Behaviors>
            <Core:DataTriggerBehavior Binding="{Binding IsEnabled, ElementName=MyButton}" Value="False">
                <Core:ChangePropertyAction TargetObject="{Binding ElementName=MyImage}" PropertyName="Opacity" Value="0.5" />
            </Core:DataTriggerBehavior>
        </Interactivity:Interaction.Behaviors>
    </Image>
</Button>

请注意,您需要包括BehaviorsXamlSDKManaged from C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\BehaviorsXamlSDKManaged\12.0\。添加引用时您会收到警告,但忽略它即可。

Update:您应该会收到更新的行为SDK from nuget https://www.nuget.org/packages/Microsoft.Xaml.Behaviors.Uwp.Managed/ now.


Option 2

你总是可以做同样的事情VisualStateManager. Open Blend并右键单击您的Button并选择编辑模板, 编辑副本然后指定您想要的资源名称并点击OK.

然后寻找Disabled VisualState并将其替换为

<VisualState x:Name="Disabled">
    <VisualState.Setters>
        <Setter Target="RootGrid.(UIElement.Opacity)" Value="0.5" />
    </VisualState.Setters>
</VisualState>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UWP 项目不支持触发器元素 (XAML) 的相关文章

  • 从程序集中加载 ResourceDictionary

    我在文件系统的某个地方有一个程序集 例如 C temp test dll 在该程序集中有一个 ResourceDictionary 例如 abc xaml 我怎样才能获得该资源字典 也许有一种使用反射的方法 到目前为止我还没有找到解决方案
  • 文件夹结构中的链接文件

    在 Visual Studio 中 当我将文件从一个项目链接到下一个项目时 在尝试加载链接的资源时出现以下错误 仅当链接文件位于文件夹内时才会发生这种情况 Error Message pack application projectName
  • 使用绑定的 UWP 应用程序显示/隐藏按钮

    我有一个列表视图 其中显示项目名称和每个项目的一些按钮 这些按钮执行不同的操作 例如添加评论查看该项目的图像等 根据项目的不同 某些项目有时会禁用其中一些按钮 并且有些按钮在某些项目中将不可见 因此 我想在这段代码中使用数据绑定来实现两件事
  • 绑定为资源

    我可以定义一个Binding as a Resource然后用不同的方式重复使用它Controls特性 Example Binding
  • 在 WPF 中,x:Name 和 Name 属性之间有什么区别?

    有时似乎Name and x Name属性是可以互换的 那么 它们之间的明确区别是什么 什么时候更适合使用其中一种呢 以错误的方式使用它们是否会对性能或内存产生影响 XAML 中确实只有一个名称 即x Name 框架 例如 WPF 可以选择
  • 更改 UWP 应用的目标设备

    我希望我的 Windows UWP 应用程序仅针对特定设备 例如桌面和移动设备 如何指定我的应用程序应仅针对这些设备 我没有发现任何感兴趣的内容Package appxmanifest文件 以及project json仅指定应用程序应使用的
  • 如何更改 x:Bind 的默认模式?

    我不知道为什么他们决定设置默认值Mode to OneTime但这不是我大多数时候想要的 浪费了我一整天的时间去调试 有没有办法设置OneWay值作为默认值Mode of x Bind
  • WPF 动画:如何使其滑入?

    所以我刚刚进入动画领域 我想做一个 滑出 动画 我成功地做到了 但现在我希望它通过单击同一个按钮滑入 就像我单击它 它滑出 然后我希望当我再次单击它时它滑回 后面没有任何代码 所以只需通过 xaml 这是 XAML
  • 高级 XAML 动画效果。脉冲、行进的蚂蚁、旋转。警报

    我有一个警报列表 当警报被激活时 要求使其更加引人注目 当警报状态发生变化时 我想在该项目周围创建脉冲外发光几秒钟 然后让它消失 我遇到的问题是我似乎无法仅在需要时才出现 DropShadowEffect 我尝试将不透明度设置为 0 将颜色
  • 按下按钮时更改几何绘图画笔的颜色

    我创建了一个按钮模板 有一个图像和一个标签 图像的来源位于 ResourceDictionary Pictures 中 图片的来源是具有白色画笔颜色的 DrawingImage
  • 如何在Xamarin.Forms中将多个页面的BindingContext设置为同一个ViewModel?

    我是 Xamarin Forms 新手 我想使用 MVVM 模式和 XAML 创建一个跨平台应用程序 在我的表单项目 pcl 中 我想设置绑定上下文 of my MainPage以及将来的多个页面到同一个 ViewModel 这可能吗 让我
  • 控制不同的DataContext

    控制WPF中不同的DataContext 因为我可以在不同的选项卡中部署多个 DataContext 并控制当前的 DataContext 我在用着Mvvm Light WPF4我有不同的 ViewModels View 但我不知道如何处理
  • TargetType="controlType" 和 TargetType="{x:Type controlType}" 之间的区别

    在 WPF 中 您可以设置TargetType类型的名称 或者您可以将其设置为 x Type nameOfType 有谁知道有什么区别 没有什么 由于属性类型是Type XAML 解析器知道尝试将您提供的任何内容转换为Type 在其他情况下
  • MultiDataTrigger 使用 OR 而不是 AND

    我正在尝试设置多个DataTriggers on my Button 我做了一些研究发现MultiDataTrigger允许您执行此操作 我想要Visibility我的财产Button如果设置为 falseCCTVPath string E
  • ASP.NET MVC 和 Expression XAML - 如何集成?

    一些背景 ASP net MVC 主要是构建和开发 ASP NET 应用程序方式的范式转变 从 代码隐藏 类型的心态转变为更像标准 MVC Ruby on Rails 的心态 我赞扬它作为一种简化工具来简化单元测试和代码分离 尽管 html
  • 根据自定义属性 UWP 禁用某些 ListViewItem

    我有一个ListView其中包含多种类型的自定义UserControls 项目要求其中一些必须是不可点击的 所以我想禁用它们 但是只有他们 这些项目将根据自定义属性的值启用 禁用 我尝试过设置ListViewItem IsEnabled财产
  • 在 xaml 中编写嵌套类型时出现设计时错误

    我创建了一个用户控件 它接受枚举类型并将该枚举的值分配给该用户控件中的 ComboBox 控件 很简单 我在数据模板中使用此用户控件 当出现嵌套类型时 问题就来了 我使用这个符号来指定 EnumType x Type myNamespace
  • 元素属性语法和属性属性语法之间有语义差异吗?

    我认为元素属性语法和属性属性语法在语义上没有太大区别 但是 我发现一定有什么不同 例如 下面的例子只是演示了一个简单的触发器
  • 列表框未使用绑定填充

    我正在尝试使用 mvvm 模式将现有程序转换为 c wpf 第一部分是选择要处理的文件的文件夹位置并填充列表框 我在这里找到了一个使用 Mvvm Light 的示例 WPF OpenFileDialog 与 MVVM 模式 https st
  • 如何使取消按钮像“X”按钮一样工作?

    在我的 XAML 文件中 我有一个窗口 我试图将其设置为无论用户单击 X 按钮还是单击 取消 按钮 行为都是相同的 我的缩写代码如下 public partial class Dialog Window private void Windo

随机推荐