WPF - 使用 IsInitialized 作为属性触发器失败

发布于 2024-10-19 11:28:18 字数 451 浏览 1 评论 0原文

该对象是一个 ListBoxItem,尽管我也尝试过使用面板。

我收到此错误消息:InvalidOperationException 内的 Property can not be null on Trigger.

这是触发器:

<Trigger Property="IsInitialized" Value="true">
    <Setter TargetName="MyPanel" Property="Background" Value="AliceBlue">
    </Setter>
</Trigger>

注意:我不能使用Loaded,因为我不希望它在呈现控件时触发。就在初始化时。

这个属性存在...为什么不起作用?

The object is an ListBoxItem, although I tried with a Panel as well.

I get this error message: Property can not be null on Trigger., within an InvalidOperationException.

Here's the trigger:

<Trigger Property="IsInitialized" Value="true">
    <Setter TargetName="MyPanel" Property="Background" Value="AliceBlue">
    </Setter>
</Trigger>

Note: I can't use Loaded, because I don't want it to fire whenever the control is rendered. Just at initializiation.

This property exists... why doesn't it work?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

望喜 2024-10-26 11:28:18

这是因为 IsInitialized 属性不是依赖属性< /a>.触发器只能与依赖属性一起使用。

但问题是为什么需要这样的触发器?因为直接在MyPanel上指定Background属性或者以`ListBoxItem'的样式来实现同样的效果。

This is because the IsInitialized property is not a Dependency Property. Triggers can only be used with dependency properties.

But the question is why would you need such a trigger? Because the same effect can be achieved just by specifying the Background property directly on MyPanel or in the style of `ListBoxItem'.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文