如何在asp.net中创建自定义属性编辑器(Web表单)

时间:2011-05-09 14:00:57

标签: asp.net user-controls webforms

假设我们在db中有这个结构,几乎没有属性。所有属性,它们的名称,默认值,描述和类型(字符串,整数,日期时间)都在一个表(attributeDefinition)中定义,所有值都存储在另一个表中。

Cars (Id, Name)

AttributeDefinition(AttributeDefinitionId, Type, Name, Desctiption, MaxValue, ...)

AttributesValues (AttributeDefinitionId, CarId, Value)

现在我想为Cars属性创建一个通用编辑器。

问题是,我该如何实施?是否有一些可以处理此问题的内置控件,是否有其他类似的内容?

或者我应该这样:

// In MyPropertyEditor.ascx load
// Iterate over all attributes in attributedefinition
//    add TextBox, NumberEditor or DateTimePicker, 
//    give them som good names
// End
//
// In Save, iterate over all controls again, and save back

我是朝着正确的方向前进吗?

我正在考虑数据网格,以及它如何动态创建所有列。我希望我能做类似的事情吗?

感谢您的帮助

此致

Larsi

1 个答案:

答案 0 :(得分:1)

你在谈论Visual Studio内部的支持吗?如果你是:

以下是处理此问题的一些选项:http://msdn.microsoft.com/en-us/magazine/cc164048.aspx在最简单的形式中,设置TypeConverter可以完成工作,但如果您想要自定义UI表单,则必须查看创建自定义编辑器。

如果没有,但是谈论用于构建网站的UI,您可以将动态数据视为其意图 - 为您的数据及其关系构建UI的快速简便方法。可能有一些组件甚至可以在Web表单项目中使用...

HTH。