问题标签 [contenttemplate]

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 回答
114 浏览

wpf - Button Style 性能命中

我有一个用例在 WPF 用户控件中显示近 10000 个项目。我正在使用 ItemsControl,每个项目都由一个按钮表示(项目是一个简单的可点击文本)。我在用户控件资源中为按钮定义了一种样式。

一切正常,直到我的列表中有超过 5000 个项目,然后 UI 绘制开始减慢 - 显示 10000 个项目需要近 3 分钟以上。

如果我将样式从资源移动到 Button.Style,那么显示项目也需要 2.5 分钟。

如果我完全删除样式,我看不到明显的延迟。使用按钮样式的唯一原因是为其 ContentPresenter 的边框(在下面的代码中命名为 Chrome)提供与按钮相同的背景,否则为灰色。

请让我知道如何在不影响性能的情况下有效地使用样式,或者如何将 ContentPresenter 边框的背景绘制为与按钮相同的颜色(透明会以某种方式起作用)。

这是代码示例:

谢谢,

RDV

0 投票
1 回答
75 浏览

wpf - ListBox中ContainerStyle和ContentTemplate的XAML单独绑定

我现在尝试了一段时间并在网上搜索但没有成功......现在我敢自己在stackoverflow上提问。

因此,目的是将 a 的 theItemContainerStyle和 theContentTemplate的定义分开ListBoxItem。我已经ListBoxItemStyle在 aResourceDictionary和两个不同DataTemplatesWindow.Resources.

我现在喜欢ListBoxItem根据 中定义的样式设置样式,并使用触发器 ( )ResourceDictionary更改样式。DataTemplateIsMouseOver

我的(不工作)代码看起来像这样:

其中DefaultListBoxStyle是 中定义的样式ResourceDictionaryPersonsListBoxItemTemplate_default&PersonsListBoxItemTemplate_infoButtons是 中定义的 DataTemplates Window.Resources

现在我得到一个错误,样式对象不能对其所属对象的样式属性产生影响。

我尝试了不同的方法,但没有成功......我也尝试过先定义样式然后更改模板,但它也不起作用。

感谢大家的帮助!

0 投票
0 回答
205 浏览

listview - 如何使用自定义 ListViewItem 在 ListView 中执行拖放操作

我正在开发一个 UWP 应用程序,我在其中实现了一个带有一些数据模板的列表视图:

我想在其中执行拖放操作。你能告诉我如何达到同样的效果吗?

0 投票
1 回答
2836 浏览

c# - UWP XAML 按钮内容模板

我正在尝试找到一种更简洁的解决方案来以我想要的方式显示按钮控件的内容。

基本上,我的目标是制作一个用作网格的按钮,但保留按钮的所有功能。所以它是可点击的,但不会挤压内容。(有点像 Windows Tiles)

目前,为了实现这一点,我可以在按钮控件中放置一个网格,但随后我必须手动设置高度和宽度。我希望通过动态和拉伸到按钮的宽度和高度。

这是我正在尝试编辑的当前模板。我愿意为 ContentTemplate 创建自定义样式,但运气不佳。任何帮助表示赞赏!也对任何干净的解决方案开放。

作为参考,这就是我过去做按钮的方式。它完成了工作,但对于屏幕尺寸的变化并不是动态的。

0 投票
2 回答
1795 浏览

wpf - Wpf TabControl 在所有选项卡中仅创建一个视图

TabControl 的ItemsSource属性绑定到 ViewModel 中的集合。ContentTemplateListView - UserControl。所有选项卡只使用一个 ListView 控件(ListView 的构造函数调用一次)。问题是所有选项卡都有一个共同的视觉状态 - 例如,如果您更改一个选项卡中任何项目的大小,则此更改将在所有选项卡上。如何为每个选项卡创建单独的ListView,但同时使用ItemsSource 属性?

0 投票
1 回答
1382 浏览

wpf - 具有多个 ItemTemplateSelector 的 ItemsControl

我有这个 ScrollViewer:

ItemsControl我用一个具有一个布尔参数的类填充。如果是真的,我想打电话给一个ItemTemplateSelector;还有一个是假的。

我正在尝试这样的事情:

这是正确的方法吗?

0 投票
1 回答
809 浏览

wpf - TextBox EventTrigger 未设置属性

我正在尝试在添加到 TextBox ControlTemplate 的清除按钮的单击事件上清除 TextBox 的文本:

一切似乎在逻辑上都很好,但我不明白为什么它不能清除文本。我曾尝试通过其名称(PART_ContentHost)访问元素或找到父 TextBox,但它们都处于风向标。

它可以通过纯 XAML 实现吗?我不喜欢安装 Blend SDK。使用这些主要工具应该可以做到这一点。不需要任何 Nuget 安装的自定义 ActionTriger 也可以。

请注意,类似问题的答案需要安装 Nuget,这对我来说并不理想。

0 投票
1 回答
2631 浏览

c# - 带有 ControlTemplate 和 ContentPresenter 的自定义 DataGrid 控件

我有一个自定义DataGrid(我扩展了它并包含了一个DependencyProperty Label),我正在使用DataGrid并想使用and添加Label控件。在作品中并按应有的方式显示,但根本不起作用或显示任何控件。我试过了,它显示了行,我想知道是否有办法以这种方式显示使用?这样做的正确方法是什么?ControlTemplateContentPresenterContentTemplateDependencyProperty LabelContentPresenterDataGridItemsPresenterDataGridContentPresenter

MyUserControl.xaml

数据网格.cs

0 投票
0 回答
53 浏览

wpf - 如何从 Codebehind 访问 WPF HelpPaneContentTemplate 项?

这是一个 HelpPaneContentTemplate:

我的问题 -> 我如何能够访问 TextBlock(此处命名为 lbl_Help)以从 Codebehind 更新文本?我尝试使用“FindName”,但我不知道如何引用 HelpPaneContentTemplate 来正确调用 Findname。

0 投票
1 回答
247 浏览

gridview - DotVVM:在 GridViewTemplateColumn ContentTemplate 中使用自定义绑定

我为 KO 做了一个 jQuery AutoComplete 绑定。它允许按术语执行服务器端搜索建议。它还允许使用通过 ID 从服务器检索的单个值填充文本框或非输入 html 元素。到目前为止,它工作正常。

当我将相同的绑定放入 ContentTemplate 时,在 GridView 的第一次渲染期间,所有绑定工作正常,从服务器检索项目中每个 id 的数据,并将正确的名称注入到 span 中。

如果我试图移动到网格的第二页,则从服务器检索主要数据,我为每个行项获取新的 ReviewObjectId-s,但未请求服务器(chrome 调试器的网络选项卡中没有请求) 而且绑定根本没有初始化,名称与上一页完全相同。在我转到寻呼机中的最后一页或在寻呼机中呈现更多分页号码之前,通常会发生相同的行为。有时单击下一页可以完成工作

过滤 DataSource 以为每一行显示相同的名称(每个项目都有相同的目标 ReviewObjectId)通常会显示相同的结果。

自定义绑定看起来像这样

“查找”是生成建议列表的自动完成 api url。

“get”是一个填充 api url,它通过 Id (ReviewObjectId) 提供实体。

提供 TextItem 和 ValueItem 用于将接收到的 JSON 映射到 viewModel。

我在 GridView、DataPager 和过滤器中都使用与 DataSource 相同的 GridViewDataSet,数据源始终根据页面和过滤器值正确过滤。

我究竟做错了什么?我应该挖到哪里?

UPD:绑定: