我希望能够点击一个文本块并让它运行一个命令。这个是可能的吗?(如果没有,我是不是应该在它上面做一个透明的按钮或者别的什么?)
发布于 2011-08-10 07:15:12
您可以使用InputBinding。
<TextBlock Text="Hello">
<TextBlock.InputBindings>
<MouseBinding Command="" MouseAction="LeftClick" />
</TextBlock.InputBindings>
</TextBlock>
编辑: Hyperlink可能也值得一提。
<TextBlock><Hyperlink Command="" TextDecorations="None" Foreground="Black">Hello</Hyperlink></TextBlock>
发布于 2011-08-10 06:04:30
这个按钮将消耗你的点击,并且点击不会继续到你的TextBlock
。如果您不需要这样做,这将是一种方法。您可以修改文本块ControlTemplate,并添加按钮,为按钮提供一个具有透明RectangleT的新ControlTemplate。更好的解决方案是使用一种方法将命令连接到EventBehavior之类的事件,并将其放在OnMouseLeftButtonDown
事件上。
https://stackoverflow.com/questions/7003507
复制相似问题