我是MVVM的初学者。我想将选定的树视图项绑定到文本块。我找到了一个解决方案here。所以我在我的项目中实现了相同的......:
<TextBox Text="{Binding SelectedItem, Converter={StaticResource GetTextFromItemConverter}, ElementName=tvMain, Mode=OneWay}"
还在我的viewmodel中创建了GetTextFromItemConverter类(与解决方案中的相同)。 但在xaml我得到错误说
无法解析资源GetTextFromItemConverter。
如何解决此问题??
答案 0 :(得分:1)
我认为类GetTextFromItemConverter
是在名为TestDemo
的名称空间中定义的。首先,您必须在XAML中创建该类的某个实例作为某些资源。例如,您可以将其添加为Window.Resources
的某些资源,我们需要导入该类的命名空间,以便我们可以创建该类的实例,如下所示:
<Window ...
xmlns:local="clr-namespace:TestDemo">
<Window.Resources>
<local:GetTextFromItemConverter x:Key="textConverter"/>
</Window.Resources>
<!-- ... -->
<TextBox Text="{Binding SelectedItem,
Converter={StaticResource textConverter},
ElementName=tvMain, Mode=OneWay}"/>
<!-- ... -->
</Window>
请注意,添加的部分xmlns:local="clr-namespace:TestDemo"
是导入TestDemo
命名空间,别名为local
前缀。 ...
是占位符,表示您在窗口中拥有的内容(由设计人员自动生成)。
答案 1 :(得分:0)
检查您映射的视图模型是否被正确引用,如果是这样,它是否完美检查您使用的转换器的路径引用。
例如:
xmlns:converter="using your namespace path"-location
转换器放在资源字典中。