问题标签 [controltemplate]
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 - 我在 ControlTemplate 中有一个按钮。我如何获得它的参考?
我只想为我正在使用的 WPF 编辑器启用或禁用 ControlTemplate 中的按钮。
wpf - WPF:更新列表框项目中的标签
我有一个ListBox
根据用户设置的整数属性添加项目数的地方。这些项目是从ControlTemplate
由标签和TextBox
内部组成的资源创建的DockPanel
。标签不是数据绑定的,但我希望它具有基于ListboxItem
它所包含的 (index + 1) 的某种动态内容。我的问题/问题是我希望能够更新每个标签的内容ListboxItem
,但由于某种原因无法访问标签。我不知道有任何方法可以通过标签的数据绑定来做到这一点,因为标签在模板中并且不知道它的父级是ListboxItem
. 任何人都可以帮助我消除其中的一些困惑,让我回到正确的轨道上吗?
我希望能够绑定Label
xaml中的内容,或者更新Label
后面代码中的内容。我不确定最好的路线是什么。
.net - ResourceDictionary 在单独的程序集中
我有想要在多个单独的应用程序中使用的资源字典文件(MenuTemplate.xaml、ButtonTemplate.xaml 等)。我可以将它们添加到应用程序的程序集中,但最好将这些资源编译到一个程序集中并让我的应用程序引用它,对吗?
构建资源程序集后,如何在我的应用程序的 App.xaml 中引用它?目前我使用 ResourceDictionary.MergedDictionaries 来合并各个字典文件。如果我将它们放在程序集中,如何在 xaml 中引用它们?
wpf - 如何更改 ControlTemplate 中标签的字体大小
在我的 WPF ListBox 中,我有一个 ListBoxItem 的 ControlTemplate 样式。在那个 ControlTemplate 里面我定义了一个标签。根据一些细节,我需要更改标签的字体大小。所以从我的代码隐藏中,我需要确定字体应该是什么,然后我需要设置它。
这是我使用 ControlTemplate 的风格(我已经去掉了一些不相关的控件)
我怎样才能做到这一点?
wpf - 如何将 ScrollViewer 放在它应该滚动的内容之上
我想把我的 ScrollViewer 放在这样一种方式,它重叠/坐在它滚动的内容之上。我会设置 ScrollViewer 的不透明度,以便内容在下面可见。
据我了解默认的 ScrollViewer,这似乎不可能开箱即用,因为内容嵌套在 ScrollViewer 内。
关于如何使这项工作的任何想法?
编辑:我知道 ScrollViewer 是一个装饰器,并且内容不知道 ScrollViewer。这种分离很好,我不希望内容知道 ScrollViewer。我尝试做的是纯粹的视觉(布局)事情。只需在内容顶部显示 ScrollViewer。ScrollViewer 的行为应保持不变。
wpf - WPF:使 ControlTemplate 中的控件无效
我创建了一个在 OnRender 方法中绘制一些自定义图形的装饰器。图形取决于包含装饰器的对象的位置。我通过样式通过模板属性设置装饰器。问题是装饰器的 OnRender 方法在应用模板时只被调用一次。因此,当我更改对象的位置并在该对象上调用 InvalidateVisual() 时,不会重新渲染装饰器。
我设法通过将对象的模板设置为 null 然后将其重置回相同的模板来解决此问题,如下所示:
这可以解决问题,但我确信这不是应该的方式。我错过了什么?
wpf - 将 ControlTemplate 与用户控件混合使用是个好主意吗?
拥有同时支持s 和现有内容的用户控制 ( )是否可能并且是个好主意?我知道s 应该只在您从 Control ( ) 继承时使用,但我发现如果您的 UserControl.xaml 为空,您也可以使用它们。public MyControl: UserControl
ControlTemplate
ControlTemplate
public MyControl: Control
UserControl
想象一下,我有一个控件,它有两个并排的矩形,如下所示:
我希望控件的用户能够用FrameworkElement
他想要使用的任何东西替换这些矩形。所以我需要一个ControlTemplate
.
但在 99% 的情况下,控件的用户对现有功能感到满意,所以我希望他能够说:
后面的代码:
XAML:
这似乎是不可能的,因为如果我支持控件模板,我真的没有任何 UI 元素或 xaml。我只有文件后面的代码。我想我可以有一个DependencyProperty
Left
,但只要我没有某种容器来保存不会有多大好处的内容。我必须在文件后面的代码中创建网格。似乎不是一个好主意。
最后,我希望能够使用泛型,以便用户可以指定部件的类型:
由于类型安全(无需FrameworkElement
转换为正确的类型),这将有助于代码背后的代码。不幸的是,我认为 XAML 方面并不真正支持泛型。
有没有解决这个问题的方法,还是真的“从 Control 继承以支持ControlTemplate
s 但失去控件的易用性。从 UserControl 继承以支持易用性但失去ControlTemplate
支持”?
.net - 如何创建一个没有边框的WPF窗口,只能通过手柄调整大小?
如果您ResizeMode="CanResizeWithGrip"
在 WPF 上进行设置,Window
则右下角会显示调整大小的夹点,如下所示:
如果您也设置WindowStyle="None"
了,标题栏会消失,但灰色斜边仍然存在,直到您设置ResizeMode="NoResize"
. 不幸的是,在设置了这种属性组合后,调整大小的夹点也消失了。
我已经通过自定义覆盖了Window
's 。我想自己指定窗口的边框,并且我不需要用户能够从所有四个侧面调整窗口的大小,但我确实需要调整大小的手柄。ControlTemplate
Style
有人可以详细说明满足所有这些标准的简单方法吗?
- 除了我
Window
在ControlTemplate
. - 在右下角有一个有效的调整大小手柄。
- 没有标题栏。
wpf - WPF:使整个边框可点击
我正在尝试在 WPF 中实现一个按钮,当您单击它时会显示一个菜单。我已经完成了所有工作,控件的 ControlTemplate 如下所示。(该控件扩展了 ToggleButton)。
问题是,仅当用户单击路径绘制的小箭头时才会显示菜单。有什么办法可以让整个边框 HitTestVisible?
wpf - 是否可以使用可检查的 MenuItem 作为 RadioButton 的控制模板?
我的 WPF 应用程序中有一个菜单,其中包含多个选项,它们就像一个单选按钮组(选择一个取消选择其余选项)。我想使用可检查的菜单项作为单选按钮的模板。
我试图设置模板,但它似乎不像预期的那样工作。选择和取消选择项目似乎与单选按钮的值不同步。
我想我可以使用更复杂的模板并使用 Path 或其他东西“伪造”选定的标记,但对于这样一个简单的目的来说,这似乎需要做很多工作。此外,当使用更复杂的模板时,我必须解决我不想做的不同主题。
这是一个简单的例子来演示这个问题。