嘿所以我在Silverlight中有一个自定义控件。其实并不重要,但它是一个带有树形视图,滑块和其他垃圾的大型组合。将属性暴露给Silverlight中的Intellisense
现在在控制中我们有一个名为defaultTemplate的实例变量。它是DataTemplate类型的。基本上它是TreeViewItem用作其头文件模板的模板,除非应用程序开发人员调用myControl.setTemplate(DataTemplate dt);
只需通过使公共财产,并给予它的getter和setter,它出现时,我键入下面的智能感知...
<myNamespace:myControl x:Name="theControl" defa
智能感知上,我班有一个defaultTemplate财产的事实回升并将其列为选项。
我想什么:
我想对于上述功能将继续,但对于智能感知功能添加到自动列出该值的选项。所以我有这些数据模板定义在控件可以访问的资源字典中。我希望他们能当我到打字的这部分弹出的选项:
<myNamespace:myControl x:Name="theControl" defaultTemplate="_"
我的功能,寻找可以在TextBlock中的前景财产被发现。当你键入
foreground=""
其开始列出颜色供您选择。我将把常量定义为我的数据模板的名称,并且从那些或类似的东西中选择智能感知。
我该如何实现这个目标?谢谢!
澄清编辑:我需要智能感知认识这些都为XAML属性接受输入常数的列表。所以我的defaultTemplate属性可以只是一个字符串。我将在后面的代码中处理该字符串的含义。但是我需要intellisense知道哪些字符串可以在XAML中输入该属性。一旦您输入报价,前景色会在智能感知中弹出一个列表,如“Azure,Beige ... LemonChiffon ...”等。我该如何提供智能感知列表? 谢谢!
最后编辑:感谢siege898现在我可以选择我的defaultTemplate从智能感知为我提供一个列表值。不过,我也希望能够给应用程序开发人员(使用我的控件)一个选项来定义他们自己的数据模板并指定它的名称。
因此,例如,Bob在他的应用程序中使用我的控件。我提供的模板都不适合他。因此Bob在资源字典中创建了一个名为bobTemplate的应用程序的数据模板。我希望Bob能够在xaml defaultTemplate="bobTemplate"
的defaultTemplate字段中输入,并且不会引发错误。我相信我现在遇到的问题是因为该字段在我的枚举中期待值。有谁知道我可以如何设置这两个给我下拉列表生成的枚举,但仍然接受自定义字符串? 我在想一个类型转换器,但我不知道如何使用它为我想要的...
谢谢,工作!任何人都知道intellisense如何意识到枚举值? – NickHalden 2010-08-09 15:38:45