问题标签 [datatrigger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8096 浏览

wpf - 您可以将 DataTrigger 绑定到附加属性吗?

在 WPF 中,DataTrigger 是否可以绑定到附加属性?

我本质上想在附加属性上使用转换器来在特定验证规则被破坏时提供样式。我正在使用如下标记:

但是,当它运行时,我得到以下信息:

System.Windows.Data 错误:39:BindingExpression 路径错误:在“对象”“文本框”(名称=“”)上找不到“验证”属性。BindingExpression:Path=Validation.Errors; 数据项='文本框'(名称='');目标元素是'TextBox'(名称='');目标属性是“NoTarget”(类型“对象”)

如果我将 DataTrigger 绑定路径更改为“文本”,我不会收到数据绑定错误(但它当然不会提供我正在寻找的行为)。

0 投票
2 回答
16648 浏览

wpf - WPF Datatrigger 未按预期触发

我有以下 XAML:

第一个文本块随着 SelectedItems.Count 的变化而变化,显示为 0、1、2 等。第二个块上的数据触发器似乎永远不会触发来更改文本。

有什么想法吗?

0 投票
2 回答
989 浏览

.net - 是否可以共享 DataTrigger?

我在 XAML 中定义了一个 DataTrigger,我想在多个地方使用它。是否可以将其定义为资源然后共享?

这是我的触发器:

虽然我可以在我的 Window.Resources 中定义它并给它一个键,但我如何在我的 XAML 的其余部分中引用它?

0 投票
3 回答
9441 浏览

wpf - WPF:将数据触发器绑定到属性“Ischecked”时出现复选框问题

我在 GridViewColumn 中有一个复选框,用于显示/更改数据库值。复选框的单击事件用于更改数据库中的值。为了处理属性“IsChecked”的状态,我使用了 datatrigger 和 setter,下面是 xaml 代码:

在我单击复选框之前,绑定效果很好。在我第一次单击复选框后,如果在数据库中手动更改了我映射到属性“IsChecked”的值,则属性“IsChecked”的状态不会更新。例如,如果我将相同的值映射到复选框的属性“内容”,即使我单击了复选框,触发器也可以正常工作。

有没有人没有什么问题?

0 投票
12 回答
176776 浏览

wpf - 值不为空的 DataTrigger?

我知道我可以创建一个 setter 来检查值是否为 NULL 并执行某些操作。例子:

但是如何检查“非”值......如“NOT NULL”或“NOT = 3”?这在 XAML 中可能吗?

结果:感谢您的回答...我知道我可以做一个值转换器(这意味着我必须编写代码,而这不会是我希望的纯 XAML)。但是,这确实回答了您不能在纯 XAML 中有效地“不”执行此操作的问题。然而,选择的答案可能显示了创建这种功能的最佳方式。很好的发现。

0 投票
2 回答
3296 浏览

c# - WPF:如何使用数据触发器(或等效项)交换 Listview 单元格内容

我有一个实现 ListView 的 WPF 应用程序。我想根据行所代表的数据类型在其中一列中显示图像(一个小图标)。有点像您在 Windows 资源管理器中看到的显示。

我在 XAML 的其他地方使用 DataTriggers,似乎可以使用类似的方法来换出整个单元格内容,但我找不到任何人这样做的示例。

有什么想法吗?

0 投票
2 回答
1195 浏览

wpf - 如何根据源数据用另一个控件替换 WPF 网格中的图像?

我有一个像这样布置的网格;

这一切都很好,但是当列表视图中的选定项目没有图像时,我现在想将图像更改为另一组控件说“抱歉,没有可用的图像”

我尝试将图像包装在 DockPanel 中并在那里设置 DataTemplate(这样我就可以使用 DataTriggers),但 IntelliSense 说不!

ListView 使用 DataTriggers 来做类似的事情,但正如我所说,对于似乎无法访问 DataTemplate 的单个图像,我无法理解如何做到这一点。

简化的 XAML 如下;

在此先感谢 WPF 大师。

瑞安

更新:下面的两个答案(Abe 和 Jobi)都是正确的,谢谢。

0 投票
2 回答
7706 浏览

.net - WPF ListViewItem 失去焦点事件 - 如何参加该事件?

我有一个列表视图,您可以在其中选择一行/项目。这链接到在行上显示图像的数据触发器。仅在选择行时应显示图像。

这部分工作正常,但是当您将焦点移到其他内容(例如文本框或显示消息框)时,listviewitem 失去焦点,即不再显示行上的突出显示。问题是我的形象仍然存在。当列表视图失去焦点时,它应该被隐藏/折叠......如果您在列表视图上选择不同的项目/行,它可以正常工作。

有人可以帮忙吗?

问候

特拉维斯PUK

0 投票
3 回答
10364 浏览

wpf - WPF 触发器

当我为单元格获得的值是某种类型时,我正在尝试设置一个触发器来显示一个文本块。

我已经成功地在同样的情况下显示了一张图片,但是在这种情况下我不想要一张图片,而是一些文字。

已注释掉行以进行测试。尝试使其工作。注释掉的代码有效!里面的文本块 text=xxx 没有。

这是我的尝试

0 投票
1 回答
2390 浏览

wpf - DataTemplate 数据触发器仅从第二次开始工作

我有以下 XAML:

该 XAML 位于 Window 元素内。我将 Window 绑定到具有两个属性 State 和 MainContent 的 ViewModel 对象:

我相应地从属性设置器中引发 PropertyChanged 事件。

现在,我使用一个按钮从磁盘加载文件,对其进行解析并创建一个对象以分配给 MainContent 属性。在解析之前,我将 State 属性设置为 2(正在加载),在分配之后我将属性重置为 1(已加载)。

第一次解析文件,数据模板中的触发器不起作用(注意触发器绑定到父Window的Data Context的State属性,即ViewModel对象)。但第二次,确实如此!

有人可以指出错误在哪里吗?

恐怕我无法在此处发布代码,但如果您有答案并给我发电子邮件,可以分享它..