问题标签 [datatemplate]

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 投票
2 回答
1824 浏览

wpf - 3d 元素作为 WPF ListBox 中的项目

我想知道是否有人知道在 XAML 中是否有可能有一个 ListBox,其 DataTemplate 将 ListBoxItem 定义为 3d 元素。类似于以下内容:

有人看过这种事情吗/有什么建议吗?

非常感谢,bv

0 投票
1 回答
1304 浏览

c# - 代码隐藏生成的 DataTemplate 中的 EventBinding

让我们从场景开始:

我在 UserControl 中有一个 ItemsControl。在这个 ItemsControl 中,我有一个动态创建的 DataTemplate,它是在代码隐藏中创建和添加的。由于似乎没有在代码隐藏中创建 DataTemplate 的好方法,因此我必须以编程方式将 DataTemplate 的 xaml 代码生成为字符串,然后通过 XamlReader 从中创建 DataTemplate 对象:

生成的 XAML 代码如下所示并且实际使用(项目按预期呈现):

如果您想知道:XamlReader 需要 xmlns 属性来呈现控件,否则在访问代码时会出现异常。

我的问题:

现在,虽然项目看起来像预期的那样并且数据被正确绑定,但我的 customConverter 应该重新格式化绑定的数据,也没有正确应用 LostFocus 事件。我没有收到任何错误消息或警告,转换器和事件只是没有被调用。任何人都知道为什么以及如何让它发挥作用?

更新:

我到了必须解决这个问题或尝试不同方法的地步。在我上次的测试中,我尝试直接在 DataTemplate 中添加转换器,但我没有运气。生成的代码现在如下所示:

有任何想法吗?

更新 2:

正如我刚刚发现 XamlReader.Load() 只是无法连接事件。在 Silverlight 论坛中查看此主题

转换器应该可以工作,我想我仍然有某种我没有看到的命名空间问题。我对我的“简单” ItemsControl 方法有点选择,所以我认为是时候寻找另一种方法来满足我的需求了。

0 投票
2 回答
2526 浏览

datatemplate - 如何同时使用 ControlTemplate 和 DataTemplate 来指定 TabItem

我需要同时使用 ControlTemplate 和 DataTemplate - 我想。

我有一个 TabControl,它的 TabItems 由 ObservableCollection 提供 - 我可以根据自己的选择设计 ObservableCollection 项目。

TabItems 需要使用 ControlTemplate,因为它们具有选中、未选中和禁用状态,因此它们需要有事件触发器来切换状态 - 选中的标签有一个橙色玻璃按钮,未选中的标签有一个蓝色玻璃按钮. 每个选项卡都需要有一个位于相应玻璃按钮内的图标(图像)以及一个选项卡标签,每个选项卡都不同,由 ObservableCollection 提供。

如果我理解正确,可以使用 ControlTemplate 或 DataTemplate 但不能同时使用同一可视树级别。

我能想到的唯一可能的解决方案是在 TabItem ControlTemplate 中定义一个 ContentPresenter - ContentPresenter(带有图像和标签)将由 DataTemplate 定义,该 DataTemplate 将从 ObservableCollection 接收数据。

我的理解中的任何指示、建议和/或更正将不胜感激。

0 投票
2 回答
6346 浏览

wpf - 需要帮助处理 Application.xaml 文件中的 DataTemplate 事件

我的应用程序中有一个包含几个按钮的数据模板。我希望在当前页面(我在许多页面中使用此模板)而不是在 Application.xaml.vb/cs 文件中触发这些按钮的偶数处理程序,因为我希望在每个页面上执行不同的操作。

我希望我很清楚。

0 投票
2 回答
1761 浏览

wpf - 如何公开 WPF DataTemplate 的属性?

我有一个在许多页面中使用的数据模板,数据模板包含几个按钮,我想通过触发器隐藏其中一些按钮(我的意思是在我使用此 DataTemplate 的页面中设置这些按钮的 IsEnabled 属性)。

换句话说,我什至想在样式触发器/设置器中设置一个属性“ButtonXIsEnabled”、“ButtonYIsEnabled”作为我使用此 DataTemplate 的 ListBox 中可设置的 DataTemplate 的一部分。

我真的希望我足够清楚,请留下评论以获取更多详细信息。

任何讨论将不胜感激!提前致谢。

0 投票
2 回答
18474 浏览

.net - WPF 列表框空数据模板

我想知道人们如何处理没有项目的 ListBox 控件?例如,我想绑定一个搜索结果列表,但如果没有找到结果,我想显示“未找到结果”。

我目前解决此问题的方法是,如果结果集计数 = 0,我将隐藏列表框并显示带有“未找到结果”消息的标签。理想情况下,我想要 ASP .NET datagrid EmptyTemplate 解决方案。

干杯

0 投票
2 回答
5180 浏览

wpf - DataTemplate WPF 中的外部属性

场景:我有一个 ListBox,而 ListBoxItems 有一个 DataTemplate。我想要做的是在 DataTemplate 中放置一个 ContextMenu。问题是我希望这个 ContextMenu ItemsSource 根据窗口中的某些属性而有所不同。我最初的想法是我可以将 ItemsSource 绑定到窗口中的一个属性,然后返回一个 ItemsSource;但是,我似乎无法正确绑定到此属性。我相信这是因为我在 DataTemplate 中,因此 DataContext(我相信这是正确的词)属于那个 ListBoxItem 而不是窗口。如何让 DataTemplate 中的 ContextMenu 绑定到 DataTemplate 之外的属性。

0 投票
6 回答
9570 浏览

c# - 指定默认的空 DataTemplate 而不是默认的 'ToString()' DataTemplate

wpf 应用程序中的默认 DataTemplate 显示该.ToString()方法的结果。我正在开发一个应用程序,其中默认的 DataTemplate 不应该显示任何内容。

我试过了:

但这不起作用。如果不为应用程序中的每个类类型指定特定的 DataTemplate,有谁知道这是否可行?

0 投票
3 回答
1240 浏览

wpf - 如何将事件处理程序附加到使用 WPF 中的数据绑定生成的项目?

我正在为 MS Surface 单元开发并使用 aScatterView来显示一些数据。下面的场景可能也适合正常ListBox(和ListBoxItems)。

当我对 进行数据绑定时ScatterView,WPF 会自动将 的内容DataTemplateScatterViewItems. 我想为ScatterManipulationCompleted(generated) 的事件附加一些事件处理程序ScatterViewItem,但不知道该怎么做。

任何帮助深表感谢。

0 投票
2 回答
3071 浏览

mvvm - MVVM + Datacontext + DataTemplate + Blend = problems

I'm currently using MVVM in a WPF project, all works very well. I have one Master view and many Detail views that I manage using a currentView property in my MasterViewModel. By using a datatemplate, I bind a view to a viewmodel. In fact, my master view has a contentcontrol whose content property is binded to my CurrentView property. When I set this currentview property to a viewmodel or another, it calls the corresponding template.

My problem is that using this, my detail views doesn't have explicit datacontext because it is placed by my datatemplate. So in blend, when I open my view to edit its design, I have no datas to bind to my view. If I set a datacontext to my detailview, in blend I can see all datas I can bind but in runtime, the datacontext set by datatemplate is overrided by the datacontext set in my detailview, so I have no datas during runtime.

Does anyone knows how I can create a good MVVM project, with views managed by datatemplates and with datacontext that we can see with Blend ?

Thanks,