C# 禁用DatagridHyperlinkColumn中的超链接
我有一个WPF数据网格,它使用ItemsSource属性绑定到自定义类对象列表。 网格有一个DataGridHyperlinkColum,它绑定到自定义类中的属性/字段。C# 禁用DatagridHyperlinkColumn中的超链接,c#,wpf,datagrid,C#,Wpf,Datagrid,我有一个WPF数据网格,它使用ItemsSource属性绑定到自定义类对象列表。 网格有一个DataGridHyperlinkColum,它绑定到自定义类中的属性/字段。 当自定义类中的其他属性具有特定值时,我希望禁用此超链接。如何实现这一点?您可以将样式与数据触发器结合使用 当YourOtherProperty返回“x”时,以下示例标记将禁用Hyperlink: 它应该会给你一个想法。你可以使用样式和数据触发器 当YourOtherProperty返回“x”时,以下示例标记将禁用Hyper
当自定义类中的其他属性具有特定值时,我希望禁用此超链接。如何实现这一点?您可以将
样式
与数据触发器
结合使用
当YourOtherProperty
返回“x”时,以下示例标记将禁用Hyperlink
:
它应该会给你一个想法。你可以使用
样式
和数据触发器
当YourOtherProperty
返回“x”时,以下示例标记将禁用Hyperlink
:
它应该给你一个想法。我需要在WPF DataGrid单元中禁用链接的类似功能,但在我的单元中有EventSetter,因此我需要对@mm8提出的解决方案进行一些修改
<DataGridHyperlinkColumn Binding="{Binding Converter={x:Static util:GetMemberName.Instance}}" Header="Member Name">
<DataGridHyperlinkColumn.CellStyle>
<Style TargetType="Hyperlink">
<Setter Property="IsEnabled" Value="{Binding HasPermission}">
</Setter>
</Style>
</DataGridHyperlinkColumn.CellStyle>
<DataGridHyperlinkColumn.ElementStyle>
<Style>
<EventSetter Event="Hyperlink.Click" Handler="Member_Hyperlink_Click" />
</Style>
</DataGridHyperlinkColumn.ElementStyle>
</DataGridHyperlinkColumn>
我需要在WPF DataGrid单元中禁用链接的类似功能,但在我的单元中有EventSetter,因此我需要对@mm8提出的解决方案进行一些修改
<DataGridHyperlinkColumn Binding="{Binding Converter={x:Static util:GetMemberName.Instance}}" Header="Member Name">
<DataGridHyperlinkColumn.CellStyle>
<Style TargetType="Hyperlink">
<Setter Property="IsEnabled" Value="{Binding HasPermission}">
</Setter>
</Style>
</DataGridHyperlinkColumn.CellStyle>
<DataGridHyperlinkColumn.ElementStyle>
<Style>
<EventSetter Event="Hyperlink.Click" Handler="Member_Hyperlink_Click" />
</Style>
</DataGridHyperlinkColumn.ElementStyle>
</DataGridHyperlinkColumn>
您可以将DataGridTemplateColumn
+模板与超链接一起使用(例如使用)。您能提供一个例子吗?我无法比教程更好地解释它:+。您可以将DataGridTemplateColumn
+模板与超链接一起使用(例如使用)。你能提供一个例子吗?我不能比教程更好地解释它:+。我想他需要{Binding RelativeSource={RelativeSource antestortype={x:Type DataGridRow}},Path=DataContext.YourOtherProperty}
,才能访问YourOtherProperty
,但不是完全正确的now@grek40例如他没有提供“YourOtherProperty”是IEnumerable ItemsSource集合中类型为T的属性。实际上他是…”“Grid有一个DataGridHyperlinkColum,它绑定到自定义类中的属性/字段”和“自定义类中的另一个属性”。可能不完全清楚,但默认假设应该是“自定义类”“引用集合项。@grek40:请重新阅读问题:“我有一个WPF数据网格,它使用ItemsSource属性绑定到自定义类对象列表…”。自定义类是我猜这里的类型T。我想我把它与扩展WPFDataGridControl
columns的问题混在一起了,其中column属性将成为大多数内部绑定的DataContext
,对不起。我想他需要{Binding RelativeSource={RelativeSource AncestorType={x:type DataGridRow},Path=DataContext.YourOtherProperty}
以访问YourOtherProperty
,但不能完全确定是否正确now@grek40:他没有提供“YourOtherProperty”是IEnumerable ItemsSource集合中T类型的属性。实际上他提供了。。。“网格具有绑定到自定义类中的属性/字段的DataGridHyperlinkColum”和“自定义类中的另一个属性”。可能不太清楚,但默认假设是“自定义类”指的是集合项。@grek40:请重新阅读问题:“我有一个WPF数据网格,它使用ItemsSource属性绑定到自定义类对象列表…”。我想自定义类就是这里的类型T。我想我把它与扩展WPFDataGridControl
columns的问题搞混了,其中column属性将成为大多数内部绑定的DataContext
,对不起。