- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要覆盖 ListViewItem 的预定义样式以使选择不可见。如果我将整个样式复制到我的资源中并进行编辑,我知道该怎么做。但我不敢相信没有比复制整个样式更轻松的方法了。所以我发现默认的 ListViewItem 样式使用以下画笔进行选择:
<UserControl.Resources>
<SolidColorBrush x:Key="ListViewItemPointerOverBackgroundThemeBrush" Color="Yellow" />
<SolidColorBrush x:Key="ListViewItemSelectedBackgroundThemeBrush" Color="Yellow" />
<SolidColorBrush x:Key="ListViewItemSelectedForegroundThemeBrush" Color="Yellow" />
<SolidColorBrush x:Key="ListViewItemSelectedPointerOverBackgroundThemeBrush" Color="Yellow" />
<SolidColorBrush x:Key="ListViewItemSelectedPointerOverBorderThemeBrush" Color="Yellow" />
</UserControl.Resources>
注意:我已将所有这些画笔放到我的用户控件中,并将它们全部设置为黄色。但是我的用户界面中没有任何黄色,唉。所以问题是:如何强制默认模板使用我覆盖的画笔?第二个(可选)问题:也许我做错了,有更好的方法来实现我的目标吗?
最佳答案
正如 Vasile 所说,您需要覆盖画笔,这必须在 App 级别完成,据我所知,如果您只想更改一个控件或在一页上更改,则需要对整个控件进行模板化。
如果你好奇,你可以在下面找到所有的画笔:C:\Program Files (x86)\Windows Kits\8.0\Include\WinRT\Xaml\Design
要覆盖您在 App.xaml/resource 字典中添加的 ListView 颜色,我在此处添加了一些注释,以便您可以看到哪个画笔执行什么操作:
<ResourceDictionary x:Key="Default">
<!--After selection - Background-->
<SolidColorBrush x:Key="ListViewItemSelectedBackgroundThemeBrush" Color="Yellow"></SolidColorBrush>
<!--When pointer hovers over an item - Background-->
<SolidColorBrush x:Key="ListViewItemPointerOverBackgroundThemeBrush" Color="Red"></SolidColorBrush>
<!--When the item is selected (first few milliseconds) - Background-->
<SolidColorBrush x:Key="ListViewItemSelectedPointerOverBackgroundThemeBrush" Color="Green"></SolidColorBrush>
<!--When the item is selected (first few milliseconds) - Border-->
<SolidColorBrush x:Key="ListViewItemSelectedPointerOverBorderThemeBrush" Color="Black"></SolidColorBrush>
</ResourceDictionary>
关于xaml - ListViewItem 选择颜色覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14868773/
我有一个 ListView ,其中包含几个动态创建的项目,每个项目都有两个子项目,它们是数量和代码,在查询数据库后应更新数量,但为了使代码更具可读性,我想通过访问子项目键而不是它的索引,比如: 子项目
我的 ListViewItems 中有删除按钮。从这些按钮的点击事件中,我想在通过数据库中的 ID 删除项目之前显示一个确认对话框。 ID 存储在项目的 ViewHolder 中。 如何从 Alert
我有一个 ListView,其中 ListView 项目有按钮和文本 block .... 塞纳里奥: 我可以在不选择 ListView 项目的情况下单击按钮,即选择最后一个项目,然后如果我尝试单击第
寻求帮助。 是否有机会通过ViewModel {Binding}更改Listviewitem的ContentBorder:BorderBrush? Something like this 最佳答案 更
我需要覆盖 ListViewItem 的预定义样式以使选择不可见。如果我将整个样式复制到我的资源中并进行编辑,我知道该怎么做。但我不敢相信没有比复制整个样式更轻松的方法了。所以我发现默认的 ListV
下面是一些构建 ListView 的代码示例。这是我第一次尝试更改 ListView 中项目的颜色和字体。下面的代码可以毫无问题地填充 ListView,但它不使用字体。有人可以告诉我我在这里做错了什
我正在开发一个通用 Windows 应用程序,其中有一个带有 DataTemplate 的 ListView。我想让 ListView 可扩展,当我单击(选择)一个项目时,所选项目的高度会随着动画而增
我有一些来自集合的 ListViewItem,我创建了一个 DataTemplate,这样每个 ListViewItem 都有一个 Button 作为子控件:
对于哪些操作,我应该使用 Checkbox 与 ListViewItem 的 SelectedItem?我不禁认为这只是个人喜好,但话又说回来,我仍然不知道。 最佳答案 如果您选择其他项目,已选中的项
我正在使用 C# 创建 Windows 窗体应用程序。该窗体包含一个 ListView。这是红十字会调度员的应用程序。 ListView 有一个所有单元的列表。每个单元都有一个状态。此状态需要更改。因
有一段时间我被这个小问题难住了。 W10 下的 ListView 有一些我无法理解的奇怪行为。考虑一个简单的列表:
我有一个按钮作为每个 ListViewItem 的最后一列。按下按钮时,我需要在单击事件中找到按钮(发件人)父 ListView 项。 我试过: ListViewItem itemToCancel =
在我当前使用 Javascript 中的 gridlayout 实现的 listview 中,如果我右键单击某个项目,则会显示一个显示“复制”的上下文菜单。我想覆盖此上下文菜单事件以选择元素而不是显示
当我向用户显示我的自定义 listviewitem 时,每个项目中包含的所有项目和对象都具有我想要的颜色, 但是当滚动和选择(使用 onListItemClick )时,项目不会更改所需颜色的背景颜色
关于构造的快速简单的问题。 我有以下用于将项目添加到 ListView 的代码。 ListViewItem item = new ListViewItem(); item.Text = file; i
我有一个包含三列的 ListView,我想为每一列添加字符串 这是代码 ListViewItem tempLV = new ListViewItem("first"); tempLV.SubItems
我正在尝试在自定义 ListView 中实现搜索功能因此我隐藏了Items自定义 ObservableCollection这允许 AddRange ,类似于 one defined on damonp
我正在使用 Compact Framework 开发一个智能设备项目。 我有一个 ListView,其中包含多个可检查的 ListViewItem:属性 CheckBoxes 为真。我一次只需要检查一
我有一个 ListView (WinForms),我想通过单击按钮在其中上下移动项目。要移动的项目是已检查的项目。因此,如果选择项目 2、6 和 9,当我按下向上移动按钮时,它们将变为 1、5 和 8
我有一个 ListView,对于 View = List,我想让列表项填满控件的整个宽度。也就是说,当您单击一个项目时,整行都会突出显示。 我在 ListView 或 ListViewItem 中找不
我是一名优秀的程序员,十分优秀!