public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if (context != null && context.Instance != null && provider != null) { IWindowsFormsEditorService service = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); if (service != null) { ILimnorProject p = null; IProjectAccessor pa = context.Instance as IProjectAccessor; if (pa != null) { p = pa.Project; } else { IWithProject wp = context.Instance as IWithProject; if (wp != null) { p = wp.Project; } } if (p != null) { LanguageList ctl = new LanguageList(service, p); service.DropDownControl(ctl); if (ctl.SelectedLanguage != null) { value = ctl.SelectedLanguage; } } } } return(value); }
public void LoadData(string dataName, WebPageDataSet data, ILimnorProject project) { _baseCaption = string.Format(CultureInfo.InvariantCulture, "{0} - [{1}]", this.Text, dataName); _project = project; _dataset = data; // _projectResourcesNode = _project.ResourcesXmlNode; updateLanguagesNodes(null); // WebDataTable[] tbls = _dataset.GetData(); for (int i = 0; i < tbls.Length; i++) { WebDataTableSingleRow sr = tbls[i] as WebDataTableSingleRow; if (sr != null) { TreeNodeNamedData tnn = new TreeNodeNamedData(sr); treeViewDataSet.Nodes[0].Nodes.Add(tnn); } else { TreeNodeTabledData tnt = new TreeNodeTabledData(tbls[i]); treeViewDataSet.Nodes[0].Nodes.Add(tnt); } } treeViewDataSet.ExpandAll(); if (treeViewDataSet.Nodes[0].Nodes.Count > 0) { treeViewDataSet.SelectedNode = treeViewDataSet.Nodes[0].Nodes[0]; } }
public LanguageList(IWindowsFormsEditorService service, ILimnorProject project) { _srv = service; this.DrawMode = DrawMode.OwnerDrawFixed; this.Items.Add(new languageItem(string.Empty)); IList <string> names = XmlUtil.GetLanguages(project.ResourcesXmlNode); foreach (string s in names) { this.Items.Add(new languageItem(s)); } }