Sample code for custom DropDownList in WFFM.
public class CustomDropListStateProvPicker : Sitecore.Form.Web.UI.Controls.DropList
{
private string _initiallySelectedStateProv;
[VisualCategory("Initial Selection")]
[VisualFieldType(typeof(TextAreaField)), Localize]
[VisualProperty("Initial Selection:", 100)]
public string InitialSelection { get; set; }
protected override void InitItems(Sitecore.Form.Web.UI.Controls.ListItemCollection items)
{
this.KeepHiddenValue = false;
items = new Sitecore.Form.Web.UI.Controls.ListItemCollection();
OrderedDictionary dictionaryStateProvs = GetStateProvs();
foreach (DictionaryEntry stateprov in dictionaryStateProvs)
{
items.Add(new ListItem() { Value = (string)stateprov.Key, Text = (string)stateprov.Value });
if ((string)stateprov.Value == InitialSelection)
{
_initiallySelectedStateProv = (string)stateprov.Key;
}
}
base.InitItems(items);
}
protected override void DoRender(HtmlTextWriter writer)
{
if (!string.IsNullOrEmpty(_initiallySelectedStateProv))
{
droplist.SelectedValue = _initiallySelectedStateProv;
}
base.DoRender(writer);
}
private OrderedDictionary GetStateProvs()
{
// Your custom logic for state binding.
return dictionaryStateProvs;
}
}
No comments:
Post a Comment