我正在创建一个UserControl,它公开了一些依赖项属性,必须填充这些属性才能使控件生效。
当我在XAML中使用控件时,我可以为依赖项属性提供值。但是如果我没有设置所有值,那么直到运行时它才会显现(异常将被抛出)。
UserControl是否有任何方法可以根据需要标记某些依赖项?如果这是一个简单的C#类,我会将其依赖项作为构造函数参数。但我不确定在WPF / XAML世界中采用类似方法的正确途径是什么。
我们正在使用.NET 3.5和VisualStudio 2008。
答案 0 :(得分:0)
一种可能的解决方案是让控件在其可视区域中呈现错误消息,在设计期间向开发人员提示这些属性并敦促他为其分配值。
此类行为的一个示例是Bing Maps Control,它需要由应用程序员设置其CredentialsProvider属性。只要未设置CredentialsProvider,地图就会在其中心显示一个带有相应消息的大标签。
与Bing Maps Control相比,您可以考虑仅在设计时显示此类消息,并在运行时抛出异常。