氚雲代碼-列表使用


1.獲取選定列表的對象

2.修改數據標題,列名

3.列表自定義篩選

4.修改列表顏色

using System;
using System.Collections.Generic;
using System.Text;
using H3;

public class D0017286997bef7c8704ed9ae1b3ebd1dad82d1_ListViewController: H3.SmartForm.ListViewController
{
    public D0017286997bef7c8704ed9ae1b3ebd1dad82d1_ListViewController(H3.SmartForm.ListViewRequest request): base(request)
    {
    }

    protected override void OnLoad(H3.SmartForm.LoadListViewResponse response)
    {
        //修改顏色代碼要放在OnLoad后面
        //
        base.OnLoad(response);
        foreach(Dictionary < string, object > data in response.ReturnData)
        {
            if(data["F0000002"] + string.Empty == "")
            {
                data["F0000002"] = new H3.SmartForm.ListViewCustomCell(data["F0000002"] == null ? "--" : data["F0000002"].ToString(), H3.SmartForm.Color.Blue);
            } else
            {
                data["F0000002"] = new H3.SmartForm.ListViewCustomCell(data["F0000002"] == null ? "--" : data["F0000002"].ToString(), H3.SmartForm.Color.Red);
            }
        }
    }
    //列表自定義篩選(只顯示男)
    // protected override void OnInit(H3.SmartForm.LoadListViewResponse response) {
    //     H3.Data.Filter.Filter filter=new H3.Data.Filter.Filter();//構造過濾器
    //     H3.Data.Filter.And andMat=new H3.Data.Filter.And();//構造and匹配器
    //     andMat.Add(new H3.Data.Filter.ItemMatcher("F0000002",H3.Data.ComparisonOperatorType.Equal,"男"));//添加查詢條件
    //     filter.Matcher=andMat;
    //     this.Request.Filter=filter;
    //     base.OnInit(response);
    //  }
    //修改列名
    // protected override void OnInit(H3.SmartForm.LoadListViewResponse   response)
    // {
    //     Dictionary < string, H3.SmartForm.ListViewColumn > columns=new Dictionary<string, H3.SmartForm.ListViewColumn>();
    //     foreach(string key in response.Columns.Keys)
    //     {
    //         if(key == "F0000001")//判斷當前列的編碼是否是F0000001
    //         {
    //             //將F0000001列的列名稱改成 供應商信息
    //             H3.SmartForm.ListViewColumn newCol = new H3.SmartForm.ListViewColumn(
    //                 "F0000001",//列編碼(對應控件編碼)
    //                 "Name", //列名稱
    //                 response.Columns[key].Visible,
    //                 response.Columns[key].Sortable,
    //                 response.Columns[key].Url,
    //                 response.Columns[key].Align,
    //                 response.Columns[key].IsLabel,
    //                 response.Columns[key].ShowMode
    //             );
    //             columns.Add("F0000001", newCol);
    //         }
    //         else
    //         {
    //             columns.Add(key, response.Columns[key]);
    //         }
    //     }
    //     response.Columns = columns;
    // }
    //修改數據標題(Name)
    // protected override void OnInit(H3.SmartForm.LoadListViewResponse   response)
    // {
    //     Dictionary < string, H3.SmartForm.ListViewColumn > columns=new Dictionary<string, H3.SmartForm.ListViewColumn>();
    //     foreach(string key in response.Columns.Keys)
    //     {
    //         if(key == "Name")//判斷當前列的編碼是否是F0000001
    //         {
    //             //將F0000001列的列名稱改成 供應商信息
    //             H3.SmartForm.ListViewColumn newCol = new H3.SmartForm.ListViewColumn(
    //                 "Name",//列編碼(對應控件編碼)
    //                 "標題", //列名稱
    //                 response.Columns[key].Visible,
    //                 response.Columns[key].Sortable,
    //                 response.Columns[key].Url,
    //                 response.Columns[key].Align,
    //                 response.Columns[key].IsLabel,
    //                 response.Columns[key].ShowMode
    //             );
    //             columns.Add("Name", newCol);
    //         }
    //         else
    //         {
    //             columns.Add(key, response.Columns[key]);
    //         }
    //     }
    //     response.Columns = columns;
    // }
    //修改排序列


    protected override void OnSubmit(string actionName, H3.SmartForm.ListViewPostValue postValue, H3.SmartForm.SubmitListViewResponse response)
    {
        //獲取選擇行idid
        if(actionName == "Init")
        {
            string[] objectId = (string[]) postValue.Data["ObjectIds"];
            if(objectId == null || objectId.Length == 0)
            {
                response.Message = "請選擇數據行";
                return;
            }
            foreach(string item in objectId)
            {
                //獲取數據對象
                H3.DataModel.BizObject biz = H3.DataModel.BizObject.Load(this.Request.UserContext.UserId, this.Engine, "D0017286997bef7c8704ed9ae1b3ebd1dad82d1", item, false);
                biz["F0000003"] = double.Parse("0" + biz["F0000003"]) + 1;
                biz.Update();
            }
        }
        if(actionName == "Copy")
        {
            string[] objectId = (string[]) postValue.Data["ObjectIds"];
            foreach(string item in objectId) 
            {
                 //獲取數據對象
                H3.DataModel.BizObject biz = H3.DataModel.BizObject.Load(this.Request.UserContext.UserId, this.Engine, "D0017286997bef7c8704ed9ae1b3ebd1dad82d1", item, false);
                H3.DataModel.BizObject newbiz=new H3.DataModel.BizObject(this.Engine,this.Engine.BizObjectManager.GetPublishedSchema("D0017286997bef7c8704ed9ae1b3ebd1dad82d1"),this.Request.UserContext.UserId);
                newbiz["F0000001"]=biz["F0000001"];
                newbiz["F0000002"]=biz["F0000002"];
                newbiz["F0000003"]=biz["F0000003"];
                newbiz.Status=H3.DataModel.BizObjectStatus.Effective;
                newbiz.Create();
             }
        }
        base.OnSubmit(actionName, postValue, response);
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM