protected void btnDeleteField_Click(object sender, EventArgs e) { if (GetTargetIDBasedOnUI() == 0) { return; } Target target = GetTargetObjectBasedOnUI(); //string strFieldID = tbFieldID.Text.Trim(); //uint unFieldID = Convert.ToUInt32(strFieldID); uint unFieldID = GetTargetFormFieldIDBasedOnUI(); TargetFormField tff = target.FormFields.FindByFieldID(unFieldID); if (tff != null) { string strOldFieldName = tff.FieldName; tff.ToBeDeleted = true; MySqlConnection con = GetMySqlConnection(); target.FormFields.SaveToDatabase(con); // Update the target form field fields on the Web form (all are text boxes) ClearTargetFormFieldFields(); // Update the list box lbTargetFormFieldNames if (strOldFieldName != null) // This test may be unnecessary { ListItem li = new ListItem(strOldFieldName); if (lbTargetFormFieldNames.Items.Contains(li)) { lbTargetFormFieldNames.Items.Remove(strOldFieldName); } } lbTargetFormFieldNames.SelectedValue = null; // Update the dictionary m_dictTargetFormFields if (m_dictTargetFormFields != null && strOldFieldName != null && m_dictTargetFormFields.ContainsKey(strOldFieldName)) { m_dictTargetFormFields.Remove(strOldFieldName); } } }
protected void lbTargetFormFieldNames_SelectedIndexChanged(object sender, EventArgs e) { string strSelectedTargetFormFieldName = lbTargetFormFieldNames.SelectedValue; if (strSelectedTargetFormFieldName == null || !m_dictTargetFormFields.ContainsKey(strSelectedTargetFormFieldName)) { ClearTargetFormFieldFields(); return; } UInt32 unSelectedTargetID = GetTargetIDBasedOnUI(); MySqlConnection con = GetMySqlConnection(); Target target = new Target(con, unSelectedTargetID); UInt32 unSelectedFieldID = m_dictTargetFormFields[strSelectedTargetFormFieldName]; TargetFormField field = target.FormFields.FindByFieldID(unSelectedFieldID); tbFieldID.Text = field.FieldID.ToString(); tbFieldName.Text = field.FieldName; tbFieldValue.Text = field.FieldValue; }
protected void btnSaveField_Click(object sender, EventArgs e) { try { string strFieldName = tbFieldName.Text.Trim(); string strFieldValue = tbFieldValue.Text.Trim(); if (strFieldName == string.Empty || strFieldValue == string.Empty) { return; } if (GetTargetIDBasedOnUI() == 0) { return; } Target target = GetTargetObjectBasedOnUI(); //string strFieldID = tbFieldID.Text.Trim(); bool bSave = false; bool bNewOrNameChanged = false; string strOldFieldName = null; uint unFieldID = GetTargetFormFieldIDBasedOnUI(); TargetFormField tff1 = null; //if (strFieldID == string.Empty) if (unFieldID == 0) { tff1 = new TargetFormField(0, target.TargetID, strFieldName, strFieldValue); target.FormFields.Add(tff1); bSave = true; bNewOrNameChanged = true; } else { //uint unFieldID = Convert.ToUInt32(strFieldID); tff1 = target.FormFields.FindByFieldID(unFieldID); if (tff1 != null) { string strOldFieldValue = tff1.FieldValue; strOldFieldName = tff1.FieldName; bNewOrNameChanged = (strFieldName != strOldFieldName); if (bNewOrNameChanged || strFieldValue != strOldFieldValue) { tff1.FieldName = strFieldName; tff1.FieldValue = strFieldValue; tff1.ToBeUpdated = true; bSave = true; } } } if (!bSave) { return; } if (bNewOrNameChanged && m_dictTargetFormFields.ContainsKey(strFieldName)) { throw new Exception(string.Format(@"Cannot save target form field: There is already another target form field named '{0}'.", strFieldName)); } tff1.ValidateDataBeforeSave(); MySqlConnection con = GetMySqlConnection(); target.FormFields.SaveToDatabase(con); TargetFormField tff2 = target.FormFields.FindByFieldName(strFieldName); // Update the text box tbFieldID tbFieldID.Text = tff2.FieldID.ToString(); if (strOldFieldName == null || strOldFieldName != strFieldName) { // Update the list box lbTargetFormFieldNames if (strOldFieldName != null) { ListItem li = new ListItem(strOldFieldName); if (lbTargetFormFieldNames.Items.Contains(li)) { lbTargetFormFieldNames.Items.Remove(strOldFieldName); } } lbTargetFormFieldNames.Items.Add(strFieldName); lbTargetFormFieldNames.SelectedValue = strFieldName; // Update the dictionary m_dictTargetFormFields if (m_dictTargetFormFields != null) { if (strOldFieldName != null && m_dictTargetFormFields.ContainsKey(strOldFieldName)) { m_dictTargetFormFields.Remove(strOldFieldName); } m_dictTargetFormFields.Add(strFieldName, tff2.FieldID); } } } catch (Exception ex) { SetStatusMessageLabel(ex); } }