- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想知道是否可以向数据网格左上角的“全选”按钮添加功能,以便它也取消选择所有行?我有一个方法附加到执行此操作的按钮,但如果我可以从“全选”按钮触发此方法以将功能保留在 View 的同一部分,那就太好了。这个“全选”按钮可以添加代码吗?如果可以,如何找到该按钮?我找不到任何示例或建议。
最佳答案
好的,经过大量搜索后,我发现了如何从 Colin Eberhardt 那里找到按钮,在这里:
Styling hard-to-reach elements in control templates with attached behaviours
然后我在他的类中扩展了“Grid_Loaded”方法来为按钮添加一个事件处理程序,但记得先删除默认的'Select All'命令(否则,在运行我们添加的事件处理程序后,命令获取运行)。
/// <summary>
/// Handles the DataGrid's Loaded event.
/// </summary>
/// <param name="sender">Sender object.</param>
/// <param name="e">Event args.</param>
private static void Grid_Loaded(object sender, RoutedEventArgs e)
{
DataGrid grid = sender as DataGrid;
DependencyObject dep = grid;
// Navigate down the visual tree to the button
while (!(dep is Button))
{
dep = VisualTreeHelper.GetChild(dep, 0);
}
Button button = dep as Button;
// apply our new template
ControlTemplate template = GetSelectAllButtonTemplate(grid);
button.Template = template;
button.Command = null;
button.Click += new RoutedEventHandler(SelectAllClicked);
}
/// <summary>
/// Handles the DataGrid's select all button's click event.
/// </summary>
/// <param name="sender">Sender object.</param>
/// <param name="e">Event args.</param>
private static void SelectAllClicked(object sender, RoutedEventArgs e)
{
Button button = sender as Button;
DependencyObject dep = button;
// Navigate up the visual tree to the grid
while (!(dep is DataGrid))
{
dep = VisualTreeHelper.GetParent(dep);
}
DataGrid grid = dep as DataGrid;
if (grid.SelectedItems.Count < grid.Items.Count)
{
grid.SelectAll();
}
else
{
grid.UnselectAll();
}
e.Handled = true;
}
本质上,如果有任何行未被选中,它会“全选”,否则它会“取消全选”。它的工作方式与您期望全选/取消全选的工作方式非常相似,老实说,我不敢相信他们没有让命令默认执行此操作,也许在下一个版本中。
无论如何,希望这对某人有所帮助,干杯,将
关于c# - WPF Datagrid "Select All"按钮 - "Unselect All"也是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1493491/
如何将 UITableView 的单元格属性设置为不可选择?当用户点击单元格时,我不想看到蓝色选择框。 最佳答案 防止行选择 要完全阻止选择 UITableViewCell,请让您的 UITableV
有时,每月至少有 1 次 +-,当我访问我的网站时,没有选择主题,并且收到很多错误代码。 Notice: Undefined index: highlighted em include() (linh
我正在尝试在用户悬停菜单项时实现“预览”场景。 例如,假设一个程序有一个带有“设置颜色”子菜单的上下文菜单。子菜单弹出一个颜色列表以供选择。现在,当鼠标光标位于特定颜色上时,我希望它更改“选定颜色”的
我有一个带有几个选项的 select 元素,但我希望其中一些选项不可选。 基本上是这样的: CITY 1 City 1 branch A City 1 branch
在 Excel VBA 中,有没有办法选择特定的锁定单元格,同时让其他单元格“不可选择”? 我有一个 protected excel 表。我想让用户能够选择工作表中的特定锁定单元格,同时不允许他们选择
我使用它来允许用户选择和上传文件: 这正确显示: 当用户点击“上传”时,我上传文件。 当用户单击“删除”时,如何清除文件名? 最佳答案 只需清除文件输入元素的值: document.getEleme
我在表列中定义了多个选择字段, THIS IS THE PLACE TO SELECT THE PROJECTS
我正在尝试在 JavaFX 中设置一个复选框树,其中叶子绑定(bind)到其父级: 当选择父级时,它们也会被选择 无法单独更改。 我使用与 selectedProperty 的绑定(bind)来完成此
jQuery 有 .select()方法,它允许您在文本区域中选择文本时执行函数。 遗憾的是,没有相应的 .deselect() 方法来在用户删除选择时执行函数。 我如何检测用户何时取消选择文本(例如
我设计了我的 带引号使用 CSS 的 :before选择器。一切正常,工作正常,但有 1 个问题。引号导致靠近该标记的元素无法选择。或者,更准确地说,它们不能直接选择。引号位于它们的顶部,浏览器会尝试
我有 2 个表,其中包含许多列。我的表格示例: table1 _______________________________________________ | a | b | c | d | e |
当我用鼠标单击十字符号时,我遇到了 Select2 问题(请注意:allowClear 为 true)select2:unselect 事件被触发,但之前选择的值仍保持选择状态一段时间。 optio
1)我没有 JavaScript 知识。 2)我正在使用 select2(多选)引导表单。3)如果我点击相应组的一个选项,我想取消选择该组的其他选项。 3.1)例如:如果选择了选项值“2”和“6”,然
我能够通过 setOnItemClickListener 更改单个 ListView 项的背景 view.setBackgroundResource(R.color.green); 我一次只需要选择一
我正在使用 Select2,一个很棒的插件。 HTML: All Apple Pear ... JavaScript: $('#fruits').select2(); 当我选择“全部
有没有办法以编程方式“取消选择”给定 $("#selectable").selectable() 小部件的任何和所有选定元素? 最佳答案 以下命令适用于 http://jqueryui.com/dem
我有两个复选框,其设置的功能类似于单选按钮(我使用了复选框,以便它们都可以默认为 .setSelection(false)),当选择它们时,它们会启动 for 循环使用适用的复选框填充 4 个复合 M
我正在使用 在 Bootstrap 中实现选项卡关闭功能包含选项卡标题文本以及关闭图标(作为跨度中的背景图像)的元素。 为了使其正常工作,图标必须是不可拖动的(如果您在图标上单击鼠标,然后移开,您希
我正在开发一个包含 JTable 的 Java Swing 应用程序。默认情况下,首次启动应用程序时,调用方法 jtable.getSelectedRow() 或 jtable.getSelected
我正在尝试使用 selenium-webdriver 实现关键字“Unselect Frame”,但不知道如何使其对所有框架通用。 以下示例不起作用: /** * Sets the top fra
我是一名优秀的程序员,十分优秀!