- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想实现以下目标:
创建一个包含 2 列的 WPF DataGrid:
第一个项目将以超链接样式显示目录路径。单击超链接将在该项目指定的路径中打开 Windows 资源管理器。
第二个项目将以超链接样式显示文件路径。单击超链接将启动该文件,并使用 Windows 定义的默认应用程序。
我不知道这是否是正确的选择,但我将 DataGridHyperlinkColumn 添加到了我的 DataGrid 中。一个问题是添加不引用 Internet 位置的 Uri 项目。另一个问题是以不打开网络浏览器的方式处理点击。
有人可以帮忙吗?
最佳答案
这普遍适用:
<DataGridHyperlinkColumn Binding="{Binding Link}">
<DataGridHyperlinkColumn.ElementStyle>
<Style>
<EventSetter Event="Hyperlink.Click" Handler="DG_Hyperlink_Click"/>
</Style>
</DataGridHyperlinkColumn.ElementStyle>
</DataGridHyperlinkColumn>
private void DG_Hyperlink_Click(object sender, RoutedEventArgs e)
{
Hyperlink link = (Hyperlink)e.OriginalSource;
Process.Start(link.NavigateUri.AbsoluteUri);
}
如果 URI 指向一个网站,它将使用默认的 Web 浏览器打开;如果它是一个文件夹,它将在资源管理器中打开;如果它是一个文件,它将使用与其关联的默认应用程序打开。
<小时/>要将其用于自动生成的列,您的属性需要为 Uri
类型,以便生成 DataGridHyperlinkColumn
。然后,您可以通过将样式放置在 DataGrid.Resources
中来连接该事件:
<DataGrid.Resources>
<Style TargetType="Hyperlink">
<EventSetter Event="Click" Handler="DG_Hyperlink_Click"/>
</Style>
</DataGrid.Resources>
关于wpf - 使用 WPF DataGridHyperLinkColumn 项打开 Windows 资源管理器并打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5764951/
我为超链接控件创建了一个样式:
我有一个简单的 WPF 应用程序,它在 DataGrid 中显示 reddit 链接: 但是请注意,由于链接的颜色和行突出显示的颜色,选择行时 DataGridHyperlinkColumn 中的链接
我正在使用 WPFToolkit 的 Datagrid 控件。我可以填充数据网格,但是我在使用 DataGridHyperlinkColumn 时遇到了问题。我希望它可以直观地将链接显示为人名,但要让
有什么方法可以将命令与 DataGridHyperlinkColumn 相关联?我试过这个:
绑定(bind)到字符串类型的属性时没有问题(“http://something.com”)。但是,我似乎在旧示例中看到直接绑定(bind)到 Uri 属性。 NavigURI
我想实现以下目标: 创建一个包含 2 列的 WPF DataGrid: 第一个项目将以超链接样式显示目录路径。单击超链接将在该项目指定的路径中打开 Windows 资源管理器。 第二个项目将以超链接样
绑定(bind)到字符串类型的属性时没有问题(“http://something.com”)。但是,我似乎在旧示例中看到直接绑定(bind)到 Uri 属性。 NavigURI
我是一名优秀的程序员,十分优秀!