如何在WPF中从C#获取HyperLink文本?

Ejr*_*085 4 c# wpf

我有一个WPF Hyperlink,我正试图从中获取文本内容.

例如:

<Hyperlink Command="{Binding CustomersCommand}" Name="HLCustomers">
    Customers
</Hyperlink>
Run Code Online (Sandbox Code Playgroud)

使用通常的方式访问Text属性或使用VisualTreeHelper获取某些子文本元素Hyperlink是不可能的,因为它不是可视元素.我试图从中获取文本,FirstInline但这也没有给我文本.

如何Hyperlink在运行时从上面示例中的元素获取值"Customers" ?

Tej*_*rma 6

如果您确实需要获取其中包含的文本Hyperlink,您可以深入了解Inlines它所公开的属性并获取它.

var run = HLCustomers.Inlines.FirstOrDefault() as Run;
string text = run == null ? string.Empty : run.Text;
Run Code Online (Sandbox Code Playgroud)

请注意,这仅在您的第一个内联Hyperlink确实是一个时才有效Run.对于更复杂的情况,您可以使用此示例进行finagle.