protected void gvProductVariantAttributes_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "UpdateProductVariantAttribute") { int index = Convert.ToInt32(e.CommandArgument); GridViewRow row = gvProductVariantAttributes.Rows[index]; HiddenField hfProductVariantAttributeId = row.FindControl("hfProductVariantAttributeId") as HiddenField; DropDownList ddlProductAttribute = row.FindControl("ddlProductAttribute") as DropDownList; TextBox txtTextPrompt = row.FindControl("txtTextPrompt") as TextBox; CheckBox cbIsRequired = row.FindControl("cbIsRequired") as CheckBox; DropDownList ddlAttributeControlType = row.FindControl("ddlAttributeControlType") as DropDownList; NumericTextBox txtDisplayOrder = row.FindControl("txtDisplayOrder") as NumericTextBox; int productVariantAttributeId = int.Parse(hfProductVariantAttributeId.Value); int productAttributeId = int.Parse(ddlProductAttribute.SelectedItem.Value); string textPrompt = txtTextPrompt.Text; bool isRequired = cbIsRequired.Checked; AttributeControlTypeEnum attributeControlType = (AttributeControlTypeEnum)Enum.ToObject(typeof(AttributeControlTypeEnum), int.Parse(ddlAttributeControlType.SelectedItem.Value)); int displayOrder = txtDisplayOrder.Value; ProductVariantAttribute productVariantAttribute = ProductAttributeManager.GetProductVariantAttributeById(productVariantAttributeId); if (productVariantAttribute != null) { ProductAttributeManager.UpdateProductVariantAttribute(productVariantAttribute.ProductVariantAttributeId, productVariantAttribute.ProductVariantId, productAttributeId, textPrompt, isRequired, attributeControlType, displayOrder); } BindAttributes(); BindCombinations(); RefreshSelectCombinationControl(); } }