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

    我们来先看看WinAction的修改数据的流程:

    具体的参考代码:

            public virtual void EditEntityHandler(object entity, object caller, object sender, EventArgs e)
            {
                
    if (caller is IDataListView)
                {
                    IDataListView listForm 
    = caller as IDataListView;
                    
    if (null == listForm.DataList || (listForm.DataList is ICollection && (listForm.DataList as ICollection).Count == 0))
                        
    return;
                }

                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)//新增时进行修改
                        {
                            
    if (caller is IDataControlActionView)
                            {
                                
    //修改最后新增的记录
                                if ((entity as Entity).IsNewEntity)
                                {
                                    CommonFunctions.SetFormTop(eForm);
                                    
    return;
                                }
                            }
                            
    if (caller is IDataControlActionView && caller is IDataListView && (caller as IDataListView).DataList is IList)
                                (caller 
    as IDataControlActionView).RemoveLastNewRow();
                            
    if (caller is IDataControlActionView)//已经执行过修改
                                UnloadEditEntityEvent(caller as IDataControlActionView);
                        }
                        
    else
                        {
                            
    if (mEditForm is IBindEntityAware)
                                (mEditForm 
    as IBindEntityAware).BindEntity(entity);
                            CommonFunctions.SetFormTop(eForm);
                            
    return;
                        }
                    }
                    LoadEditForm(EditForm);
                }
                
    if (eForm is IBindEntityAware)
                    (eForm 
    as IBindEntityAware).BindEntity(entity);
                
    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/
  • 相关阅读:
    MongoDB入门下
    MongoDB简介
    MongoDB 查询上
    MongoDB 创建,更新,删除文档 下
    MongoDB 创建,更新,删除文档 上
    SqlServer 对 数据类型 text 的操作
    Asp.Net编码
    MongoDB 查询下
    (基于Java)编写编译器和解释器第3A章:基于Antlr构造词法分析器(连载)
    (基于Java)编写编译器和解释器第2章:框架I:编译器和解释器第三部分(连载)
  • 原文地址:https://www.cnblogs.com/kfarvid/p/2172310.html
Copyright © 2011-2022 走看看