现在的位置: 首页 > 综合 > 正文

WinForm应用程序框架设计之WinAction(一:显示列表窗体)

2013年07月08日 ⁄ 综合 ⁄ 共 1735字 ⁄ 字号 评论关闭

我们来先看看WinAction的显示列表窗体的流程:

具体代码参考:

        public void InitListForm(Form listForm, object entity)
        {
            
if (listForm is IDataListView)
            {
                IDataListView mForm 
= listForm as IDataListView;
                IList
<T> dataList;
                
if (null==entity)
                    dataList 
= useBll.SelectAll<T>();
                
else
                    dataList 
= useBll.QueryForList<T>(entity);
                mForm.setDataList(TransformToDataListObject(dataList));
                
if (null == mForm.RefreshEntityList)
                    mForm.RefreshEntityList 
= RefreshEntity;
                
//初始化搜索对象
                if (entity != null)
                    mForm.SearchEntity 
= entity;
            }
            
//
            if (listForm is IDataListGridView && !(listForm as IDataListGridView).InitColumn)
            {
                (listForm 
as IDataListGridView).InitColumns(useBll.GetModelPropertys(), useBll.GetTableColumns(), pdm.FindTableByTableName(useBll.GetTableName()));
                
if (listForm is IDataControlActionView)
                {
                    IDataControlActionView dForm 
= listForm as IDataControlActionView;
                    dForm.DeleteEntity 
= DeleteEntity;
                    dForm.EditEntity 
= EditEntityHandler;
                    dForm.NewEntity 
= NewEntityHandler;
                    dForm.AfterUpdateEntity
= UpdateEditCallerData;
                    dForm.AfterUpdateEntityCancel 
= CancelEditCallerData;
                    dForm.AfterUpdateEntityError 
= ErrorEditCallerData;
                    dForm.ClosingListForm 
= ClosingListFormHandler;
                }
            }
        }

 

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

抱歉!评论已关闭.