/// <summary> /// 取得单元格的数据 /// </summary> /// <param name="row"></param> /// <param name="checkState"></param> /// <returns></returns> private string GetColumnValue(GridRow row, bool checkState) { string result = String.Empty; if (!String.IsNullOrEmpty(DataField)) { string textAlignClass = String.Empty; if (TextAlign != TextAlign.Left) { textAlignClass = "box-grid-checkbox-" + TextAlignName.GetName(TextAlign); } if (RenderAsStaticField) { if (checkState) { result = "<div class=\"box-grid-static-checkbox " + textAlignClass + "\"></div>"; } else { result = "<div class=\"box-grid-static-checkbox box-grid-static-checkbox-unchecked " + textAlignClass + "\"></div>"; } } else { string paramStr = String.Format("Command${0}${1}${2}${3}", row.RowIndex, ColumnIndex, CommandName.Replace("'", "\""), CommandArgument.Replace("'", "\"")); // 延迟执行 string postBackReference = JsHelper.GetDeferScript(Grid.GetPostBackEventReference(paramStr), 0); // string onClickScript = String.Format("{0}_checkbox{1}(event,this,{2});", Grid.XID, ColumnIndex, row.RowIndex); string onClickScript = "Ext.get(this).toggleClass('box-grid-checkbox-unchecked');"; if (!ShowHeaderCheckBox && AutoPostBack) { onClickScript += postBackReference; } onClickScript += "X.util.stopEventPropagation.apply(null, arguments);"; if (checkState) { if (Enabled) { result = String.Format("<div class=\"box-grid-checkbox {0}\" onclick=\"{1}\"></div>", textAlignClass, onClickScript); } else { result = String.Format("<div class=\"box-grid-checkbox box-grid-checkbox-disabled {0}\"></div>", textAlignClass); } } else { if (Enabled) { result = String.Format("<div class=\"box-grid-checkbox box-grid-checkbox-unchecked {0}\" onclick=\"{1}\"></div>", textAlignClass, onClickScript); } else { result = String.Format("<div class=\"box-grid-checkbox box-grid-checkbox-disabled box-grid-checkbox-unchecked-disabled {0}\"></div>", textAlignClass); } } } } return(result); }
internal override string GetColumnValue(GridRow row) { //string result = String.Empty; #region DataTextField string text = String.Empty; if (!String.IsNullOrEmpty(DataTextField)) { object value = row.GetPropertyValue(DataTextField); if (value != null) { if (!String.IsNullOrEmpty(DataTextFormatString)) { text = String.Format(DataTextFormatString, value); if (HtmlEncodeFormatString) { text = HttpUtility.HtmlEncode(text); } } else { text = value.ToString(); if (HtmlEncode) { text = HttpUtility.HtmlEncode(text); } } } } else { text = Text; } #endregion HtmlNodeBuilder nb; #region Enabled nb = new HtmlNodeBuilder("a"); if (Enabled) { nb.SetProperty("href", "javascript:;"); // click string paramStr = String.Format("Command${0}${1}${2}${3}", row.RowIndex, ColumnIndex, CommandName.Replace("'", "\""), CommandArgument.Replace("'", "\"")); string postBackReference = Grid.GetPostBackEventReference(paramStr); string clientScript = Button.ResolveClientScript(ValidateForms, ValidateTarget, ValidateMessageBox, EnablePostBack, postBackReference, ConfirmText, ConfirmTitle, ConfirmIcon, ConfirmTarget, OnClientClick, String.Empty); //clientScript = JsHelper.GetDeferScript(clientScript, 0) + "X.stopEvent();"; //clientScript = clientScript + "X.stop();"; nb.SetProperty("onclick", clientScript); //result = nb.ToString(); } else { nb.SetProperty("class", "x-item-disabled"); nb.SetProperty("disabled", "disabled"); //nb = new HtmlNodeBuilder("span"); //nb.SetProperty("class", "gray"); //nb.InnerProperty = text; //result = String.Format("<span class=\"gray\">{0}</span>", text); } nb.InnerProperty = text; #endregion string tooltip = GetTooltipString(row); #region Icon IconUrl string resolvedIconUrl = IconHelper.GetResolvedIconUrl(Icon, IconUrl); if (!String.IsNullOrEmpty(resolvedIconUrl)) { nb.InnerProperty = String.Format("<img src=\"{0}\" {1} />", resolvedIconUrl, tooltip) + nb.InnerProperty; } #endregion //string result = nb.ToString(); //#region Tooltip //if (!String.IsNullOrEmpty(tooltip)) //{ // if (result.StartsWith("<a ")) // { // result = result.ToString().Insert(2, tooltip); // } // else if (result.StartsWith("<span ")) // { // result = result.ToString().Insert(5, tooltip); // } //} //#endregion //return result; string result = nb.ToString(); if (!String.IsNullOrEmpty(tooltip)) { result = result.ToString().Insert("<a".Length, tooltip); } return(result); }
/// <summary> /// 取得单元格的数据 /// </summary> /// <param name="row"></param> /// <param name="checkState"></param> /// <returns></returns> private string GetColumnValue(GridRow row, bool checkState) { string result = String.Empty; string emptyImageUrl = Grid.ResolveUrl(ResourceHelper.GetEmptyImageUrl()); if (!String.IsNullOrEmpty(DataField)) { //string textAlignClass = String.Empty; //if (TextAlign != TextAlign.Left) //{ // textAlignClass = "align-" + TextAlignName.GetName(TextAlign); //} if (RenderAsStaticField) { if (checkState) { result = String.Format("<img class=\"f-grid-static-checkbox\" src=\"{0}\"/>", emptyImageUrl); } else { result = String.Format("<img class=\"f-grid-static-checkbox unchecked\" src=\"{0}\"/>", emptyImageUrl); } } else { string paramStr = String.Format("Command${0}${1}${2}${3}", row.RowIndex, ColumnIndex, CommandName.Replace("'", "\""), CommandArgument.Replace("'", "\"")); // 延迟执行,确保当前复选框的状态已经改变 string postBackReference = JsHelper.GetDeferScript(Grid.GetPostBackEventReference(paramStr), 0); // string onClickScript = String.Format("{0}_checkbox{1}(event,this,{2});", Grid.XID, ColumnIndex, row.RowIndex); //string onClickScript = "Ext.get(this).toggleClass('unchecked');"; string onClickScript = "F.toggle(this,'unchecked');"; if (!ShowHeaderCheckBox && AutoPostBack) { onClickScript += postBackReference; } //onClickScript += "F.stop();"; if (checkState) { if (Enabled) { result = String.Format("<img class=\"f-grid-checkbox\" src=\"{0}\" onclick=\"{1}\"/>", emptyImageUrl, onClickScript); } else { result = String.Format("<img class=\"f-grid-checkbox disabled\" src=\"{0}\"/>", emptyImageUrl); } } else { if (Enabled) { result = String.Format("<img class=\"f-grid-checkbox unchecked\" src=\"{0}\" onclick=\"{1}\"/>", emptyImageUrl, onClickScript); } else { result = String.Format("<img class=\"f-grid-checkbox unchecked disabled\" src=\"{0}\"/>", emptyImageUrl); } } } } return(result); }