protected virtual void SelectMenuItem(ISelectableControl isc) { if (_selectedControl == isc) // same menu item selected { return; } _selectedControl = isc; StateProperties[DropDownCommandProperties.SelectedItemId] = isc.GetMenuItemId(); // If SelectedItemDisplayMode is not set, Medium to "Text" string selectedItemDisplayMode; if (string.IsNullOrEmpty(Properties.SelectedItemDisplayMode)) { selectedItemDisplayMode = "Text"; } else { selectedItemDisplayMode = Properties.SelectedItemDisplayMode; } Anchor selectedItem; if (selectedItemDisplayMode == "Text") { string text = isc.GetTextValue(); selectedItem = new Anchor(); UIUtility.SetInnerText(selectedItem, text); } else { selectedItem = (Anchor)_selectedControl.GetDropDownDOMElementForDisplayMode(selectedItemDisplayMode); } if (_elmMediumSelectedItem.HasChildNodes()) { Anchor oldSelectedItem = (Anchor)_elmMediumSelectedItem.FirstChild; _elmMediumSelectedItem.ReplaceChild(selectedItem, oldSelectedItem); } else { _elmMediumSelectedItem.AppendChild(selectedItem); } }
public override void OnBeginFocus() { string dictKey = DropDownCommandProperties.Value; string selectedItemTitle = StateProperties.ContainsKey(dictKey) ? StateProperties[dictKey] : ""; if (string.IsNullOrEmpty(selectedItemTitle)) { // get currently selected item ID string itemKey = DropDownCommandProperties.SelectedItemId; string currentSelectedItemId = StateProperties.ContainsKey(itemKey) ? StateProperties[itemKey] : ""; // If we currently don't have an item set, then we set it here to let the application know // since this is what we'll fall back to unless they set something else. if (string.IsNullOrEmpty(currentSelectedItemId)) { currentSelectedItemId = Properties.InitialItem; } // get the title of the selected item // The Menu can be null if this control's menu gets populated dynamically if ((!string.IsNullOrEmpty(currentSelectedItemId)) && (!CUIUtility.IsNullOrUndefined(Menu))) { ISelectableControl isc = Menu.GetItemById(currentSelectedItemId); if (!CUIUtility.IsNullOrUndefined(isc)) { selectedItemTitle = isc.GetTextValue(); } } } if (!string.IsNullOrEmpty(selectedItemTitle)) { Properties.ToolTipSelectedItemTitle = selectedItemTitle; } base.OnBeginFocus(); }
protected virtual void SelectMenuItem(ISelectableControl isc) { if (_selectedControl == isc) // same menu item selected return; _selectedControl = isc; StateProperties[DropDownCommandProperties.SelectedItemId] = isc.GetMenuItemId(); // If SelectedItemDisplayMode is not set, Medium to "Text" string selectedItemDisplayMode; if (string.IsNullOrEmpty(Properties.SelectedItemDisplayMode)) selectedItemDisplayMode = "Text"; else selectedItemDisplayMode = Properties.SelectedItemDisplayMode; Anchor selectedItem; if (selectedItemDisplayMode == "Text") { string text = isc.GetTextValue(); selectedItem = new Anchor(); UIUtility.SetInnerText(selectedItem, text); } else selectedItem = (Anchor)_selectedControl.GetDropDownDOMElementForDisplayMode(selectedItemDisplayMode); if (_elmMediumSelectedItem.HasChildNodes()) { Anchor oldSelectedItem = (Anchor)_elmMediumSelectedItem.FirstChild; _elmMediumSelectedItem.ReplaceChild(selectedItem, oldSelectedItem); } else _elmMediumSelectedItem.AppendChild(selectedItem); }