Esempio n. 1
0
        public void SelectAllGridData(string keyField, string keyField2 = "", string keyField3 = "", string keyField4 = "", string keyField5 = "")
        {
            CachedDataKey.Clear();
            for (var i = 0; i < Rows.Count; i++)
            {
                ((CheckBox)Rows[i].Cells[0].FindControl("selectCheckBox")).Checked = true;
            }

            for (var i = 0; i < GridDataSource.Rows.Count; i++)
            {
                DataRow           dr  = GridDataSource.Rows[i];
                OrderedDictionary dic = new OrderedDictionary();
                dic.Add(keyField, dr[keyField]);
                if (!string.IsNullOrEmpty(keyField2))
                {
                    dic.Add(keyField2, dr[keyField2]);
                }
                if (!string.IsNullOrEmpty(keyField3))
                {
                    dic.Add(keyField3, dr[keyField3]);
                }
                if (!string.IsNullOrEmpty(keyField4))
                {
                    dic.Add(keyField4, dr[keyField4]);
                }
                if (!string.IsNullOrEmpty(keyField5))
                {
                    dic.Add(keyField5, dr[keyField5]);
                }
                CachedDataKey.Add(dic);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Raises the <see cref="E:System.Web.UI.WebControls.GridView.PageIndexChanging"/> event.
        /// </summary>
        /// <param name="e">A <see cref="T:System.Web.UI.WebControls.GridViewPageEventArgs"/> that contains event data.</param>
        /// <exception cref="T:System.Web.HttpException">There is no handler for the <see cref="E:System.Web.UI.WebControls.GridView.PageIndexChanging"/> event.</exception>
        protected override void OnPageIndexChanging(GridViewPageEventArgs e)
        {
            var dataView = new DataView(GridDataSource);

            //Code Added for Check box persistent
            if (GridMode == GridSelectMode.MultiSelect)
            {
                if (GridMode == GridSelectMode.MultiSelect)
                {
                    for (var i = 0; i < Rows.Count; i++)
                    {
                        var item     = (OrderedDictionary)DataKeys[i].Values;
                        var checkBox = (CheckBox)Rows[i].Cells[0].FindControl("selectCheckBox");
                        int index;
                        if (checkBox.Checked && !Contains(CachedDataKey, item, out index))
                        {
                            CachedDataKey.Add(item);
                        }
                        else if (!checkBox.Checked && Contains(CachedDataKey, item, out index))
                        {
                            CachedDataKey.RemoveAt(index);
                        }
                    }
                }
            }
            //End:

            if (GridSortExpression != null)
            {
                dataView.Sort = GridSortExpression + " " + GridSortDirection;
            }
            PageIndex  = e.NewPageIndex > -1 ? e.NewPageIndex : 0;
            DataSource = dataView;
            DataBind();
        }
Esempio n. 3
0
        private IList <DataKey> MultiSelectData()
        {
            var response = new List <DataKey>();

            for (var i = 0; i < Rows.Count; i++)
            {
                var checkBox = (CheckBox)Rows[i].Cells[0].FindControl("selectCheckBox");
                // Added
                var item = (OrderedDictionary)DataKeys[i].Values;
                if (checkBox.Checked)
                {
                    SelectedIndex = i;
                    response.Add(SelectedDataKey);
                }
                //Code Added for Check box persistent
                else
                {
                    int index;
                    if (Contains(CachedDataKey, item, out index))
                    {
                        CachedDataKey.RemoveAt(index);
                    }
                }
                //End:
            }

            //Code Added for Check box persistent
            if (CachedDataKey != null)
            {
                List <OrderedDictionary> chkdatakey = CachedDataKey;
                DataKey selectedKey;
                foreach (var item in chkdatakey)
                {
                    selectedKey = GetDataKeyFromSelected(item);
                    if (!response.Contains(selectedKey))
                    {
                        response.Add(selectedKey);
                    }
                }
            }
            //End:

            if (response.Count == 0)
            {
                throw new ValidationException(string.Format(ErrorDescription.NoRowSelectedinGridView, NoCheckCaption));
            }

            CachedDataKey = null;
            return(response);
        }