0

试图为我们的设计师设计一种方法来为我们的客户创建自定义的 asp.net 网络表单。基本思想是我们有一组可以保存的通用字段,每个客户使用这些字段的子集,每个客户可能有自己的名称来表示相似的概念(即一个客户可能使用“患者”而另一个“客户” ')。停留在客户环境中将帮助设计师构建正确的表单以满足客户的需求。

现在要做到这一点,我需要尽可能多地融入设计经验。我有一组自定义控件,它们派生自诸如 asp:TextBox 之类的基本控件,并实现了一个接口以允许我迭代控件并从数据存储中插入值,或获取值以持久保存(完成)。所有这些控件都需要绑定到我的记录对象中的一个数据点。我设置了一个元数据系统以允许绑定,但我遇到麻烦的地方是将可用字段列表放入 UITypeEditor。也就是说,我还没有弄清楚如何(在设计时)在表单上设置客户上下文,然后在每个控件自定义属性编辑器上访问和使用该值(也在设计时)。这可能吗?我是否以错误的方式看待这个问题?一个表单总是有 1 个且只有一个客户上下文。

第二个问题是如何调试这些编辑器?编辑器中存在 Web 上下文的期望,但没有 asp.net 属性网格。即使有,编辑器也是不会在浏览器中运行的 winforms 组件。

如果它简化了问题,我可以包含我当前拥有的代码,但即使是简化的示例也是六个类。

4

1 回答 1

0

我解决了这些问题,在这里发布,以防通用解决方案将来对任何人都有用。

我可以通过另一种方式解决这个问题。我的父 Page 遍历它的控件,并在所有实现特定接口的控件上设置 CustomerId。

至于调试。一些重构让我可以轻松地将实现的 webforms 特定部分换出进行测试。

于 2012-12-01T18:55:02.063 回答