zoukankan      html  css  js  c++  java
  • WinForm应用程序框架设计之WinAction(新增数据)

    我们来先看看WinAction的新增数据的流程:

    源码参考:

     

            public virtual void NewEntityHandler(object entity, object caller, object sender, EventArgs e)
            {
                
    //判断编辑窗体是否已打开
                Form eForm = CallEditForm(caller);
                
    if (eForm is IEditDataForm)
                {
                    IEditDataForm mEditForm 
    = eForm as IEditDataForm;
                    
    if (eForm.Visible)
                    {
                        
    if (mEditForm.Entity is Entity && (mEditForm.Entity as Entity).IsNewEntity)//新增时再次进行新增
                        {
                            CommonFunctions.SetFormTop(eForm);
                            
    return;
                        }
                        
    if (caller is IDataControlActionView)//修改时进行新增
                            UnloadEditEntityEvent(caller as IDataControlActionView);
                    }
                    LoadEditForm(EditForm);
                }

                T mEntity 
    = GetNewEntity();
                
    if (mEntity is Entity)
                    (mEntity 
    as Entity).IsNewEntity = true;
                
    if (eForm is IBindEntityAware)
                    (eForm 
    as IBindEntityAware).BindEntity(mEntity);
                
    if (caller is IDataListView && (caller as IDataListView).DataList is IList)
                    ((caller 
    as IDataListView).DataList as IList).Add(mEntity);

                
    if (caller is IDataControlActionView)
                    LoadEditEntityEvent(caller 
    as IDataControlActionView);

                
    if (eForm.Visible)
                    CommonFunctions.SetFormTop(eForm);
                
    else
                    eForm.Show();
            }

    原创作品出自努力偷懒,转载请说明文章出处http://blog.csdn.net/kfarvid或 http://www.cnblogs.com/kfarvid/

  • 相关阅读:
    subtext 安装PythonIDE -Anaconda
    Python--DBUtil
    python操作oracle数据库-查询
    Python 离线工作环境搭建
    Scrapy-下载中间件
    centos安装 Anaconda3及使用
    Scrapy爬取人人网
    海明距离
    中心极限定理
    最大似然估计 (MLE)与 最大后验概率(MAP)在机器学习中的应用
  • 原文地址:https://www.cnblogs.com/kfarvid/p/2172308.html
Copyright © 2011-2022 走看看