gpt4 book ai didi

wpf - 使用多种类型的控件搜索并突出显示 WPF 窗口上的任何文本

转载 作者:行者123 更新时间:2023-12-04 20:25:42 26 4
gpt4 key购买 nike

这基本上是在 WPF 窗口或用户控件中实现搜索/查找。
假设您有一个带有动态只读文本的 WPF 窗口,一些在文本块上,一些在列表框中,一些在树 View 中,一些在文本块中等。

用户应该能够在顶部的文本框中键入搜索词,并能够在文本出现在窗口中的任何控件中的任何位置和控件中看到它突出显示。不,此页面与 FlowDocuments 等无关,因此不能使用开箱即用的 FlowDocumentReader。

将其称为“控制文本搜索”并突出显示搜索词,就像 Google chrome 浏览器对网页所做的那样。

以下 SO 线程可能会有所帮助,但不确定我是否可以实现上述目标(我正在尝试将一些东西放在一起)

  • Find all controls in WPF Window by type
  • WPF Listbox highlight part of ListBoxItem element

  • 有这篇文章,这也很有帮助,但适用于文档而不是控件
  • Search and highlight any text onWPF rendered page
  • 最佳答案

    好吧,我似乎找到了一个看起来像我想要的链接。

    Search and Highlight Text in an Arbitrary Visual Tree

    我将经历这个,如果它是上述问题的完整解决方案,我会回来更新

    更新 1 :好的,这真的有效,上面的链接有实际解决这个问题的代码,Kent 干得好!!! - 它一次用黄色突出显示所有搜索文本,但缺少的一件事是导航突出显示,例如下一个->下一个。我正计划在这方面工作,然后我可以在这里发布我的更新,以便它可以帮助其他人。

    更新 2:好吧,这个解决方案还有另一个问题。突出显示的矩形绘制在屏幕坐标上。因此,如果您有很长的项目列表,并且您滚动,突出显示的矩形仍然会粘在屏幕上,而不是文本块本身。

    所以现在我和我的队友将研究不同的解决方案。将保持此线程发布。

    关于wpf - 使用多种类型的控件搜索并突出显示 WPF 窗口上的任何文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1197415/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com