public void InitializeWithField(Microsoft.SharePoint.SPField field) { parentField = field as AutoCompleteFieldType; if (parentField != null) { searchListGuid = parentField.SearchListGuid; searchListName = parentField.SearchListName; chkAllowMultipleDLF.Checked = parentField.AllowMultiple; searchDisplayName = parentField.DisplayColumn; //searchKeyName = parentField.KeyColumn; string columnGuids = parentField.SearchColumnGuids; if (!string.IsNullOrEmpty(columnGuids)) { searchColumnGuids = columnGuids.Split(',').ToList(); } } ddlSearchList.SelectedIndexChanged += ddlSearchList_SelectedIndexChanged; if (!Page.IsPostBack) { using (SPWeb web = SPContext.Current.Web) { SPListCollection lists = web.Lists; foreach (SPList list in lists) { if (list.BaseType != SPBaseType.GenericList) { continue; } ListItem item = new ListItem(); item.Text = list.Title; item.Value = list.ID.ToString(); if (!String.IsNullOrEmpty(searchListGuid) && item.Value == searchListGuid) { item.Selected = true; } ddlSearchList.Items.Add(item); } PopulateFieldList(); } } }
public void OnSaveChange(Microsoft.SharePoint.SPField field, bool isNewField) { AutoCompleteFieldType customFieldType = field as AutoCompleteFieldType; if (customFieldType != null) { customFieldType.IsNew = isNewField; customFieldType.SearchListGuid = ddlSearchList.SelectedItem.Value; customFieldType.SearchListName = ddlSearchList.SelectedItem.Text; customFieldType.AllowMultiple = false; customFieldType.DisplayColumn = ddlDisplayColumn.SelectedItem.Value; //customFieldType.KeyColumn = ddlKeyColumn.SelectedItem.Value; foreach (var postId in Request.Form.AllKeys) { if (postId.Contains("chkAllowMultipleDLF")) { if (Request[postId] == "on") { customFieldType.AllowMultiple = true; } else { customFieldType.AllowMultiple = false; } break; } } StringBuilder columnGuids = new StringBuilder(); foreach (int colId in lbSearchColumns.GetSelectedIndices()) { ListItem item = lbSearchColumns.Items[colId]; columnGuids.Append(item.Value + ","); } customFieldType.SearchColumnGuids = columnGuids.ToString(); customFieldType.LookupList = ddlSearchList.SelectedItem.Value; customFieldType.LookupField = ddlDisplayColumn.SelectedItem.Value; customFieldType.LookupWebId = SPContext.Current.Web.ID; } }
public AutoCompleteFieldControl(AutoCompleteFieldType parent) { this.parentField = parent; }