本文介绍了构建C#s应用程序的正确方法(CF.NET3.5),我需要建议的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在过去的两年里,我为CF.NET3.5开发了应用程序,以便在仓库的便携设备(Windows Mobile)上运行。 从一开始,我就跳到了这个过程中,犯了很多错误,我正在逐渐纠正这些错误。已经发布的应用程序是这样制作的: 启动整个过程的主表单,该过程自动创建数据表单,该数据表单将在整个时间内保持活动状态。该数据表单将保存用户将插入或从服务器请求的所有数据。其他表单基本上是数据的视图,带有操作它们的方法。
它是有效的,但是……我这样做正确吗?或许我错过了一些非常重要的东西?
推荐答案
因此,您创建了一个数据表单,并且像使用内存一样使用它。您从不显示数据,只是将其存储在那里以供访问。
如果有人不得不接替你的工作(比如你离开公司或去世),他们会非常讨厌你的。
更好的方法是创建一个包含所有这些数据的类。
好的方面是,因为您已经有了一个数据表单,所以您可能已经知道了一切是如何组织的!
现在,只需使用数据知识来创建您可以读取和写入类。
如果您有相似项的组,请创建您的主类将包含的其他类。
如果您有几个类似的项目,请创建这些项目的公共可访问列表。
可以简单到极致,也可以复杂到你想要的程度!
考虑这些类,它们都足够通用,可以根据需要进行修改,并演示添加的一些额外内容:
public class DataForm {
private GroupedItem m_item2;
public event EventHandler Item2Changed;
public DataForm() { // this is your constructor
Item1 = new GroupedItem();
Item2 = new GroupedItem();
ItemCollection = new GroupCollectionItems("Group1");
}
public float Value1 { get; set; }
public float Value2 { get; set; }
public GroupedItem Item1 { get; set; }
public GroupedItem Item2 {
get { return m_item2; }
set {
if (m_item2 != value) {
m_item2 = value;
if (Item2Changed != null) {
Item2Changed(this, EventArgs.Empty); // notify whoever is listening for the change
}
}
}
}
public GroupCollectionItems ItemCollection { get; set; }
}
public class GroupedItem {
public GroupedItem() { // this is your constructor
}
public string Name { get; set; }
public object Value { get; set; }
}
public class GroupCollectionItem {
private GroupCollectionItem() { // this is your constructor
}
public static GroupCollectionItem Create(string groupName, string itemName, object itemValue) {
var item = new GroupCollectionItem() {
Group = groupName,
Name = itemName,
Value = itemValue
};
return item;
}
public string Group { get; private set; }
public string Name { get; private set; }
public object Value { get; set; }
}
public class GroupCollectionItems : List<GroupCollectionItem> {
public GroupCollectionItems(string name) { // this is your constructor
Name = name;
}
public string Name { get; private set; }
}
这篇关于构建C#s应用程序的正确方法(CF.NET3.5),我需要建议的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!