protected void gvProducts_PreRender(object sender, EventArgs e) { if (gvProducts.TopPagerRow != null) { gvProducts.TopPagerRow.Visible = true; ((TextBox)gvProducts.HeaderRow.FindControl("txtFilterOrderId")).Text = GetStringState(ORDER_ID_FILTER); ((TextBox)gvProducts.HeaderRow.FindControl("txtFilterProductId")).Text = GetStringState(PRODUCT_ID_FILTER); ((TextBox)gvProducts.HeaderRow.FindControl("txtFilterName")).Text = GetStringState(PRODUCT_NAME_FILTER); ((TextBox)gvProducts.HeaderRow.FindControl("txtFilterOption")).Text = GetStringState(PRODUCT_SIZE_FILTER); ((TextBox)gvProducts.HeaderRow.FindControl("txtFilterBarcode")).Text = GetStringState(BARCODE_FILTER); DropDownList ddl = ((DropDownList)gvProducts.HeaderRow.FindControl("ddlStatus")); ListItem item = ddl.Items.FindByValue(GetStringState(STATUS_CODE_FILTER)); if (item != null) { ddl.SelectedIndex = -1; item.Selected = true; } } for (int i = 0; i < gvProducts.Rows.Count; i++) { CheckBox cb = gvProducts.Rows[i].FindControl("cbChosen") as CheckBox; CheckBox cbLastActivity = gvProducts.Rows[i].FindControl("cbLastActivity") as CheckBox; LineItemLite item = BuildItem(Convert.ToInt32(gvProducts.DataKeys[i].Value), gvProducts.Rows[i]); if (cb != null) { SetChosenItems(item, cb.Checked, cbLastActivity.Checked); } } }
private bool IsEqual(LineItemLite item1, LineItemLite item2) { PropertyInfo[] properties1 = item1.GetType().GetProperties(); PropertyInfo[] properties2 = item2.GetType().GetProperties(); object value1; object value2; Type type = item1.GetType(); bool isEqual = false; for (int i = 0; i < properties1.Length; i++) { value1 = properties1[i].GetValue(item1, null); value2 = properties2[i].GetValue(item2, null); if (value1 != null && value2 != null) { isEqual = value1.Equals(value2); } if (!isEqual) { break; } } return(isEqual); }
private LineItemLite BuildItem(LineItemOverviewModel lineItem, GridViewRow row) { var newItem = new LineItemLite(); newItem.LineItemId = lineItem.Id; newItem.OrderId = lineItem.OrderId; newItem.Name = lineItem.Name; newItem.Option = lineItem.Option; newItem.ShippedQuantity = lineItem.ShippedQuantity; newItem.PendingQuantity = lineItem.PendingQuantity; newItem.AllocatedQuantity = lineItem.AllocatedQuantity; newItem.StatusCode = lineItem.StatusCode; //Fetch comment TextBox txtComment = row.FindControl("txtComment") as TextBox; if (txtComment.Text.Trim() != string.Empty) { newItem.Comment = txtComment.Text.Trim(); } // Fetch status DropDownList ddlItemStatus = (DropDownList)row.FindControl("ddlItemStatus"); if (ddlItemStatus.SelectedValue != string.Empty) { newItem.StatusCode = ddlItemStatus.SelectedValue; } return(newItem); }
protected void gvProducts_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { DropDownList ddlItemStatus = AdminStoreUtility.FindControlRecursive(e.Row, "ddlItemStatus") as DropDownList; Literal ltlStatusCode = AdminStoreUtility.FindControlRecursive(e.Row, "ltlStatusCode") as Literal; // binding selected text to dropdown if (ltlStatusCode.Text != string.Empty) { var foundItem = ddlItemStatus.Items.FindByValue(ltlStatusCode.Text); if (foundItem != null) { foundItem.Selected = true; } } var item = (LineItemOverviewModel)e.Row.DataItem; LineItemLite itemLite = BuildItem(item, e.Row); LineItemLite chosenItem = null; if (ExistInChosenItems(itemLite)) { chosenItem = SessionFacade.ChosenLineItemLites.Find(delegate(LineItemLite arg) { return(itemLite.LineItemId == arg.LineItemId); }); } CheckBox cb = e.Row.FindControl("cbChosen") as CheckBox; if (chosenItem != null) { TextBox txtComment = e.Row.FindControl("txtComment") as TextBox; txtComment.Text = chosenItem.Comment; ltlStatusCode.Text = chosenItem.StatusCode; ddlItemStatus.SelectedIndex = -1; ddlItemStatus.Items.FindByValue(ltlStatusCode.Text).Selected = true; cb.Checked = true; } } }
private void SetChosenItems(LineItemLite item, bool chosen, bool updateLastActivityDate) { if (item != null) { if (chosen) { item.UpdateOrderLastActivityDateFlag = updateLastActivityDate; if (ExistInChosenItems(item)) { SessionFacade.ChosenLineItemLites.RemoveAll(delegate(LineItemLite arg) { return(arg.LineItemId == item.LineItemId); }); } SessionFacade.ChosenLineItemLites.Add(item); SessionFacade.NotChosenLineItemLites.RemoveAll(delegate(LineItemLite arg) { return(arg.LineItemId == item.LineItemId); }); } else { SessionFacade.ChosenLineItemLites.RemoveAll(delegate(LineItemLite arg) { return(arg.LineItemId == item.LineItemId); }); if (ExistInNotChosenItems(item)) { SessionFacade.NotChosenLineItemLites.RemoveAll(delegate(LineItemLite arg) { return(arg.LineItemId == item.LineItemId); }); } SessionFacade.NotChosenLineItemLites.Add(item); } } }
private bool ExistInNotChosenItems(LineItemLite item) { bool exist = false; for (int j = 0; j < SessionFacade.NotChosenLineItemLites.Count; j++) { exist = IsEqual(SessionFacade.NotChosenLineItemLites[j], item); if (!exist) { exist = SessionFacade.NotChosenLineItemLites[j].LineItemId == item.LineItemId; } if (exist) { break; } } return(exist); }