我正在研究非常复杂的WPF应用程序,它有许多资源文件,因为XAML在设计时没有加载。我想在运行时找到XAML文件的名称。我试图使用snoop但无法找到XAML文件的名称。请帮忙
答案 0 :(得分:1)
使用Snoop不会为您提供文件名,但您应该能够通过查看您尝试的位置附近的可视树视图找到一些类型名称(即UserControls,自定义控件等)或带有x:Names的元素使用Ctrl-Shift鼠标悬停快捷方式后进入。搜索类型的使用(在控件的情况下)或在所有解决方案* .xaml文件中使用“在文件中查找”应该可以帮助您找到您正在寻找的元素。
答案 1 :(得分:0)
通常我是从UI的高级别开始(例如MainWindow) 并在那里找到我在那里找到的纸上的组件,尤其是网格。
然后我试着找出我的应用程序的元素在该视图中的位置。
如果您有多个视图,这可能会耗费一些时间。但如果你 不能只是点击设计师窗口,这是最快的之一 可行的方法。
好的,如果您只进行了微小的更改,您可以尝试找到该元素 您想通过使用字符串搜索进行更改。
找到你想要的标签,如果它是一个资源字符串,找到它的用法。
如果你有一个复杂的MVVM应用程序,你可以从调查开始 使用的ViewModels。它们可以是比View更好的起点 本身。
CNC中 WPF Inspector可以为您提供有关搜索位置的良好提示。 你可以在这里得到它:WPF Inspector home
答案 2 :(得分:0)
如果您正在根据自己的需要寻找它,您可以在任何视觉上调用BaseUriHelper.GetBaseUri(v),它将为您提供视觉来源的资源的Uri。从这个Uri你可以得到原始xaml文件