我正在尝试遵循this教程,但我不清楚EnumMatchToBooleanConverter
课程的代码应该放在哪里。我认为它会出现在代码隐藏文件(即view.xaml.cs)中,但是当我尝试在XAML中声明资源时,我收到了沿着The type EnumMatchToBooleanConverter was not found
的错误。WPF的窗口/用户控件资源的代码在哪里?
0
A
回答
0
EnumMatchToBooleanConverter在这种情况下是它自己的类。你应该可以在现有的代码背后声明它,但我会坚持它自己的文件,以确保。 Visual Studio在查找资源时可能很笨,所以如果仍然显示错误,则应重建该项目。
0
转换器(与所有其他类一样)属于它们自己的文件。
然后,你只需要在你的XAML命名空间:
xmlns:local="clr-namespace:MyNamespace"
另外,尝试重建/运行的应用程序的XAML“智能感知”往往不会更新什么是在命名空间,直到建立已经发生。
1
在一般情况下,一个小WPF项目应具有以下近似的文件夹结构:
- 项目名
- 转换器
- 数据访问
- 数据类型
- 图片
- 的ViewModels
- 查看
转换器是您存储您的Converter
类的文件夹。在开发WPF一段时间后,你会发现你的Converter
类的集合将会增加。这些文件夹中的每一个都包含我们映射到相关名称空间的类。在Converter
类的情况下,通常是这样的:
namespace ProjectName.Converters
{
[ValueConversion(typeof(bool), typeof(Brush))]
public class BoolToBrushConverter : IValueConverter
{
...
}
}
对于DataTypes
类,你会使用类似:
namespace ProjectName.DataTypes
{
public class SomeDataType
{
...
}
}
由于@LordTakkera正确提到的,你会然后需要定义一个XAML命名空间,像这样来引用XAML这些类:
xmlns:Converters="clr-namespace:ProjectName.Converters"
然后,你可以定义Converter
在Resources
部分是这样的:
<Converters:BoolToBrushConverter x:Key="BoolToBrushConverter" />
见Data Binding Overview页面上MSDN的数据转换部分获取更多信息。 MSDN上的IValueConverter
interface页面是另一个有用的资源。
相关问题
- 1. 获取WPF窗口的XAML源代码
- 2. WPF用户控制资源
- 3. iText源代码在哪里?
- 4. libOAuth.a源代码在哪里?
- 5. WPF窗口/用户控件继承XAML
- 6. 资源的ID在哪里?
- 7. Linux的usb_storage的源代码在哪里
- 8. 我的资源文件在哪里
- 9. 在不同的WPF xaml用户控件中使用资源
- 10. 我的窗口的其余部分在哪里形成代码
- 11. 关于WPF控件的源代码
- 12. wpf控件上的更新源代码
- 13. python链中的源代码在哪里?
- 14. GNU C库的源代码在哪里?
- 15. RippleDrawable的源代码在哪里? (Android L)
- 16. Python itertools.islice的源代码在哪里?
- 17. Django源代码中的Model.py在哪里?
- 18. Android adb的Windows源代码在哪里?
- 19. NInject.Framework.Web的源代码在哪里?
- 20. AutoScriptWriter的源代码在哪里
- 21. Html.TextBox的源代码在哪里
- 22. Python鸡蛋的源代码在哪里?
- 23. ghc-prim的源代码在哪里?
- 24. isnan的源代码在哪里?
- 25. F#3.1.2的源代码在哪里?
- 26. nvelocity的最新源代码在哪里
- 27. jar程序的源代码在哪里?
- 28. 目前,JUnit的源代码在哪里?
- 29. IEnumerator的源代码在哪里?
- 30. maven-properties-plugin的源代码在哪里?