我可以忽略文本框上的轻击事件吗?



我为我的应用程序创建了一个自定义路径形状。我将这个形状添加到画布上,并在这个形状的中间添加一个文本框。

点击形状并点击文本会触发文本框上的点击事件,我有办法禁用它吗?

我希望每次点击我的形状都指向该形状,而不是位于该形状顶部的文本框

您有一些选择。

TextBox上的IsHitTestVisible="False"将忽略你的点击事件,但如果他们只点击它,你就不会得到点击…

你可以编辑控制模板的TextBox和添加你的Path形状直接作为模板的一部分,所以它都接受事件作为一个文本框。

你可以通过在两个对象上添加一个层来拦截事件,就像;

<Grid>
  <Path/>
  <TextBlock/>
  <Rectangle/><!-- Use to intercept the event over the whole thing -->
</Grid>

或者你甚至可以通过嵌入UserControl使这些东西成为自己的对象,并以这种方式接受它们。

这取决于你想做什么。

如果您想显示文本,但没有编辑它的能力,为什么不使用TextBlock呢?

相关内容

  • 没有找到相关文章

最新更新