我有一个按钮,它的内容(文本)通过下面的支持属性的样式动态设置。如何通过XAML设置WPF超链接文本
<Button>
<Button.Style>
<Style>
<Setter Property="Button.Content" Value="Advanced Search" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsAdvancedSearch}" Value="True">
<Setter Property="Button.Content" Value="Standard Search" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
我需要改变这个按钮来显示只有一个超链接和相同的动态文本。就像这样:
<Button>
<Button.Template>
<ControlTemplate>
<TextBlock>
<Hyperlink>
Standard Search
</Hyperlink>
</TextBlock>
</ControlTemplate>
</Button.Template>
</Button>
有没有办法通过一个风格还是动态设置超链接的文本(inline或一些其他的标签)?
我一直无法通过XAML访问它。我得到它与超链接内的文本块上的常规绑定一起工作,但这实际上是在viewmodel上创建了一个冗余属性。
这是不太我所需要的。我想避免直接从ViewModel上的字符串属性绑定超链接中的文本。 – Ads
@广告你确定你想要一个按钮内的超链接?这将是一个非常奇怪的用户界面。你会有一个可以点击的按钮,里面有一个可以单独点击的超链接。 –
是的,我的要求是让它像一个超链接(没有导航网址,模仿按钮)。重新定义控制模板去除按钮外观,我只给了按钮一个支持方法(使用mvvm和caliburn.micro)。感谢您的textblock建议,点击我的解决方案。 – Ads