Devexpress MVC Gridview

1. 根据选中的KeyValue 来获取其他field的value

// Gridview settings
settings.CustomJSProperties = (s, e) => { Dictionary<object, int> visibleIndices = new Dictionary<object, int>(); for (int i = 0; i < ((MVCxGridView)s).VisibleRowCount; i++) visibleIndices.Add(((MVCxGridView)s).GetRowValues(i, ((MVCxGridView)s).KeyFieldName), i); e.Properties["cpIndices"] = visibleIndices; }; //javascript调用 GridView.cpIndices[Key,"fieldName")

  

2. 根据某些field的value来改变cell的backcolor

//Gridview settings

 settings.HtmlDataCellPrepared = (sender, e) =>
            {
                var gv = sender as MVCxGridView;
                string ls_Status = gv.GetRowValues(e.VisibleIndex, "Status") == null ? "" : gv.GetRowValues(e.VisibleIndex, "Status").ToString();
                string[] la_EditorField = new string[] { "TaxInvCust", "IseVAT", "TaxInvRemark" };
                if (ls_Status != "1" && la_EditorField.Contains(e.DataColumn.FieldName))
                {
                    e.Cell.BackColor = System.Drawing.Color.Transparent;
                }
            };

 

3.通过jquery获取gridview cell的value. 

//Gridview settings, id format =  gridviewname_fieldname_visableIndex

   settings.HtmlDataCellPrepared = (sender, e) =>
            {
                e.Cell.Attributes.Add("id", string.Format("{0}_{1}_{2}", settings.Name, e.DataColumn.FieldName, e.VisibleIndex));
            };


//JavaScript function 
function GetCellText(as_GridViewName,as_fieldName,ai_Index)
    {
        var ls_Amt = "";
        var ls_text = $("#" + as_GridViewName + "_" + as_fieldName + "_" + ai_Index).text();
        ls_Amt = parseFloat(ls_text.substring(0, ls_text.indexOf(".") + 3).replace(/\,/g,"")).toFixed(2);
        return ls_Amt;
    }

  

  

4.设置hyperlink column

//Gridview settings
settings.Columns.Add(column => { column.FieldName = "TaxInvNo"; column.Caption ="Tax Inv. No."; column.Width = 90; column.EditFormSettings.Visible = DevExpress.Utils.DefaultBoolean.True; column.SetDataItemTemplateContent(container => { if (container.VisibleIndex < 0) return; var ls_Url = DataBinder.Eval(container.DataItem, "Url").ToString(); if (ls_Url != null && ls_Url != "") { helper.DevExpress().HyperLink(hyperlink => { var li_VisibleIndex = container.VisibleIndex; var ls_KeyValue = container.KeyValue; hyperlink.Name = "h1" + ls_KeyValue; hyperlink.Properties.Text = DataBinder.Eval(container.DataItem, "TaxInvNo").ToString(); hyperlink.Properties.TextField = "TaxInvNo"; hyperlink.NavigateUrl = ls_Url.ToString(); hyperlink.Properties.Target = "_blank"; }).Render(); } else { if (DataBinder.Eval(container.DataItem, "TaxInvNo") != null) helper.ViewContext.Writer.Write(DataBinder.Eval(container.DataItem, "TaxInvNo").ToString()); } }); });//Tax Inv. No

  

 

posted @ 2018-03-23 15:30  Jack He  阅读(1271)  评论(0编辑  收藏  举报