问题标签 [contentpresenter]
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.
wpf - 更改列表框中内容演示者的前景色
我为列表框创建了以下样式,该列表框将在某些文本旁边显示图像:
我必须使用 contentpresenter,因为我正在使用 ListBox 本身的 DisplayMemberPath 过滤显示的内容(文本方式)。
我要做的就是在 ListBox 中选择一个项目时将 FontWeight 设置为 Bold 并将 Foreground 设置为 White。
有没有人遇到过这样的问题?我查看了一些相关问题,但人们已经能够使用 TextBlock 来解决他们的问题,但不幸的是我无法解决。
任何人都可以提供的信息将不胜感激。
干杯
wpf - 如何从数据绑定的 ItemsControl 中获取模板化项目的实例?(WPF)
我有一个<ItemsControl>
带有自定义的<DataTemplate>
(还有一个<ItemsPanelTemplate>
只是 a的自定义WrapPanel
),通过绑定ItemsSource
到一个简单的可观察字符串集合。
DataTemplate
仅包含一个自定义实例,其UserControl
属性通过 绑定到字符串{Binding}
。
问题是因为我的数据项只是字符串,我需要UserControl
直接以编程方式访问我的实例,但我似乎无法弄清楚如何!
我试过了:
...但这只是返回字符串。还:
...返回 a ContentPresenter
,我不知道如何处理ContentPresenter
以获取 my 的实例UserControl
。
??
这类似于这个问题,但它从未得到正确回答,并且也是 Silverlight 特有的,而这是 WPF。
wpf - 如何制作具有多个内容值的 Button?
我的目标是制作一个具有两个 Content 值的 Button。
将 Scrabble 瓷砖想象成一个按钮:它的中心是大字母,右下角有一个小数字。这就是我想要的效果。
我制作了一个按钮,其中包含两个 ContentPresenter 对象,并且我为每个 ContentPresenter 赋予了不同的样式。但是,我还没有找到一种方法来给每个演示者一个单独的值(即,如果我将按钮的内容设置为“X”,那么两个 ContentPresenter 都显示“X”,尽管样式不同)。
我怎样才能实现我的目标?我猜我的方法是完全错误的......
wpf - 如何更改 ContentPresenter 上的 FontFamily?
我有一个用于扩展器的自定义模板,它与下面的代码很接近。我不得不更改一些代码来取出自定义类、画笔等。
如您所见,有两个 ContentPresenter。我希望第一个使用 Tahoma Bold 作为字体而不是默认的 Tahoma。我怎样才能做到这一点?
wpf - 如何用图形路径完全替换 WPF 按钮的内容?
我已经使用 Blend 解构了一个标准 WPF 按钮,并设法创建了一个样式精美的按钮,但我无法弄清楚如何使路径填充按钮空间的内部(按钮宽度和高度)。我也不确定是否需要指定 ContentPresenter 或者它是否正确。我在按钮中间的文本之后(正常),但后面有我的图形路径。
谁能给我有关如何完成此任务的反馈?样式定义为;
这个按钮的用途是;
完成后,它应该看起来像一个弯曲的红色按钮。
提前致谢
瑞安
wpf - 我可以让两个 ContentPresenter 指向 ContentTemplate 中的单个 Content 或 ContentSource 吗?
我像 Outlook 2007 一样创建了 NavigationPane。在 Outlook 中,当窗格折叠并单击侧栏时,它会弹出 Selected NavigationItem 内容。我在 ControlTemplete 中使用 contentpresenter 模仿了相同的行为(一个用于 TabControl 的 SelectItemHost,另一个用于 Popup)。但问题是当弹出窗口打开时,NavigationPane 在离开时选择了内容,当我们从另一个导航项切换回同一个导航项时它会出现。我使用 TabControl 和 TabItem 作为 NavigationPane 和 NavigationPaneItem。
我将“SelectedContent”指向两个 ContentPresenter 的 ContentSource
wpf - 控件在 WPF 中交换 UIElements
UIElement
在 UI 上的某个“插槽”动态交换 s 的最简单方法是什么?我有许多UIElement
s 并且基于一些外部数据绑定(例如组合框选择),我希望显示其中一个,而隐藏当前可见的一个。所以行为有点像,TabControl
但没有 tabstrip、chrome 和 tabitem 实例。所以我实际上可以使用TabControl
并覆盖控制模板。但这真的是最小的方法吗?
wpf - WPF:带有 2 个(或更多!)ContentPresenters 的模板或 UserControl 以在“插槽”中呈现内容
我正在开发 LOB 应用程序,我需要多个对话框窗口(并且在一个窗口中显示所有内容不是一个选项/没有意义)。
我想为我的窗口提供一个用户控件,它可以定义一些样式等,并且会有几个可以插入内容的插槽 - 例如,模式对话框窗口的模板将有一个用于内容和按钮的插槽(这样用户就可以提供一个内容和一组带有绑定 ICommand 的按钮)。
我想要这样的东西(但这不起作用):
用户控件 xaml:
这样的事情可能吗?我应该如何告诉 VS 我的控件公开了两个内容占位符,以便我可以这样使用它?
或者,也许我可以将 ControlTemplate 用于像这里这样的窗口,但话又说回来:窗口只有一个内容槽,因此它的模板只能有一个演示者,但我需要两个(如果在这种情况下它可能会可能与一个一起使用,还有其他用例会出现几个内容槽,只需考虑文章的模板 - 控件的用户将提供标题、(结构化)内容、作者姓名、图像......)。
谢谢!
PS:如果我只想并排放置按钮,如何将多个控件(按钮)放到 StackPanel 中?ListBox 有 ItemsSource,但 StackPanel 没有,而且它的 Children 属性是只读的 - 所以这不起作用(在用户控件内):
编辑:我不想使用绑定,因为我想将 DataContext(ViewModel)分配给整个窗口(等于 View),然后从插入控件“插槽”的按钮绑定到它的命令 - 所以任何使用层次结构中的绑定会破坏 View DC 的继承。
至于从 HeaderedContentControl 继承的想法——是的,在这种情况下它会起作用,但是如果我想要三个可替换的部分呢?如何制作自己的“HeaderedAndFooteredContentControl” (或者,如果我没有 HeaderedContentControl,我将如何实现)?
EDIT2:好的,所以我的两个解决方案不起作用 - 这就是原因: ContentPresenter 从 DataContext 获取它的内容,但我需要包含元素上的绑定以链接到原始窗口(逻辑树中的 UserControl 父级)DataContext - 因为这样,当我嵌入绑定到 ViewModel 属性的文本框时,它没有被绑定,因为控件内部的继承链已被破坏!
似乎我需要保存父级的 DataContext,并将其恢复到所有控件容器的子级,但我没有得到任何事件表明逻辑树中的 DataContext 已更改。
EDIT3:我有一个解决方案!,删除了我之前的回答。看我的回复。
wpf - wpf ContentPresenter 不会启用/禁用
我已经覆盖 aComboBox
以便在组合末尾添加一个额外的按钮 - 我正在使用它来帮助导航我的应用程序。
它是一个 MV-VM 应用程序,具有编辑-保存/取消机制,根据用户是否处于“编辑模式”来禁用或启用控件。无论视图是启用还是禁用,我都希望我的导航按钮始终可用。
为了实现这一点,我将ToggleButton
和绑定ContentPresenter
到我的模型上的一个IsEditable
属性。
切换按钮按预期启用和禁用,但组合的文本保持启用状态。
由于文本是由 传递的,ContentPresenter
并且ContentPresenter
有一个IsEnabled
属性,我不明白为什么它不会禁用?
有人可以帮忙吗?谢谢安迪
.net - ContentControl 和 ContentPresenter 有什么区别?
我不确定何时应该使用ContentPresenter
而不是ContentControl
(反之亦然)。目前,我ContentControl
几乎一直在使用我DataTemplate
的 s. 什么时候会ContentPresenter
是更好的选择?为什么?