protected void ASPxGridView1_CustomCallback1(object sender, ASPxGridViewCustomCallbackEventArgs e) { try { switch (e.Parameters) { case "ExpandAll": ASPxGridView1.ExpandAll(); break; case "CollapseAll": ASPxGridView1.CollapseAll(); break; default: var parameters = e.Parameters.Split(';'); var index = int.Parse(parameters[0]); var isGroupRowSelected = bool.Parse(parameters[1]); for (int i = 0; i < ASPxGridView1.GetChildRowCount(index); i++) { var row = ASPxGridView1.GetChildDataRow(index, i); ASPxGridView1.Selection.SetSelectionByKey(row["INVENTORY"], isGroupRowSelected); } break; } } catch (Exception ex) { ScriptManager.RegisterStartupScript(this, GetType(), "ErrorText", "CallError('Error: " + ex.Message + "');", true); } }
protected bool GetChecked(int visibleIndex) { try { for (var i = 0; i < ASPxGridView1.GetChildRowCount(visibleIndex); i++) { var isRowSelected = ASPxGridView1.Selection.IsRowSelectedByKey(ASPxGridView1.GetChildDataRow(visibleIndex, i)["INVENTORY"]); if (!isRowSelected) { return(false); } } return(true); } catch (Exception ex) { ScriptManager.RegisterStartupScript(this, GetType(), "ErrorText", "CallError('Error: " + ex.Message + "');", true); return(true); } }
protected void cb_Load(object sender, EventArgs e) { ASPxCheckBox checkBox = sender as ASPxCheckBox; GridViewGroupRowTemplateContainer container = checkBox.NamingContainer as GridViewGroupRowTemplateContainer; if (ASPxGridView1.Selection.Count != 0) { int rowInGroupCount = ASPxGridView1.GetChildRowCount(container.VisibleIndex); int countToCompare = 0; for (int j = 0; j < rowInGroupCount; j++) { DataRow row = ASPxGridView1.GetChildDataRow(container.VisibleIndex, j); var key = row["ProductID"]; if (ASPxGridView1.Selection.IsRowSelectedByKey(key)) { countToCompare++; } } if (rowInGroupCount == countToCompare) { checkBox.CheckState = CheckState.Checked; } else if (rowInGroupCount > countToCompare && countToCompare != 0) { checkBox.CheckState = CheckState.Indeterminate; } else if (countToCompare == 0) { checkBox.CheckState = CheckState.Unchecked; } } else { checkBox.CheckState = CheckState.Unchecked; } }
protected void ASPxGridView1_CustomCallback(object sender, ASPxGridViewCustomCallbackEventArgs e) { string[] parameters = e.Parameters.Split(';'); int index = int.Parse(parameters[0]); bool isGroupRowSelected = false; CheckState currentState = (CheckState)Enum.Parse(typeof(CheckState), parameters[1]); switch (currentState) { case CheckState.Indeterminate: case CheckState.Checked: isGroupRowSelected = true; break; case CheckState.Unchecked: isGroupRowSelected = false; break; } for (int i = 0; i < ASPxGridView1.GetChildRowCount(index); i++) { DataRow row = ASPxGridView1.GetChildDataRow(index, i); ASPxGridView1.Selection.SetSelectionByKey(row["ProductID"], isGroupRowSelected); } }