首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF动态数据架构

WPF动态数据架构
EN

Stack Overflow用户
提问于 2010-03-05 02:56:10
回答 2查看 217关注 0票数 1

因此,在使用一些动态数据元素构建特定解决方案时,我遇到了一定程度的困难……

您可以认为pdf的工作原理非常类似于数据库--除了表和pdf的模式不同之外。不同的字段将进入数据库和pdf。用户将能够编辑某些字段,但不能编辑所有字段。在这里,我正在努力实现UI和逻辑的分离,但我遇到了困难。我的逻辑本质上是必须告诉我的UI要创建什么UI元素以及对它们施加什么限制(required、options等),所以我感觉我是在从我的业务逻辑中创建UI;但我真的不知道如何使用动态数据元素来实现这一点。完成后,我必须写入数据库,然后打印pdf。

你可以把这个问题想象成..。“我有一大堆不同的数据。我需要用不同的数据做不同的事情。我想不出一种通用的方法来做到这一点,而不会造成一些编码上的混乱。”有谁有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2010-03-05 03:48:24

您所做的是开发一个应用程序框架,而不是一个应用程序。您可能会受益于查看其他应用程序框架(有十亿个),以了解其他应用程序框架是如何处理问题的。

我现在可以告诉你,你的项目将会成功,这与你设计的处理元信息的方案有多好成正比。Steve McConnell的一般规则,即数据比代码更容易调试,这在很大程度上是此类项目的指导灯塔。

WPF非常非常适合这类事情。我一直在将我自己的应用程序框架从Windows窗体移植到WPF,我对自己不需要编写的代码感到有点惊讶。

票数 1
EN

Stack Overflow用户

发布于 2010-03-05 03:07:13

如果我是你,我会查看用户需要查看/编辑的字段的所有信息,并查看我可以看到的常见主题。考虑到你的问题,我可能会创建一个包含以下内容的类/结构:

代码语言:javascript
复制
struct FieldInfo
{
    string FieldName;
    string DisplayName;
    string DataType;
    bool Required;
    delegate Validator;
    string OldValue;
}

delegate bool Validator(string input, out string message);

我将从业务逻辑返回FieldInfo[],然后在UI中使用该数组来确定要向用户显示的内容。这样,即使是验证登录也是您的业务逻辑(使用委托),UI只需决定为每种类型显示哪些元素。您甚至可以更进一步,让FieldInfo结构有一个元素名称,告诉UI该字段使用哪个元素(Textbox、DDL等)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2381917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档