示例#1
0
 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);
 }
示例#2
0
 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];
     }
 }
示例#3
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));
                }
            }