using CaeKnowledge.Data; using LiteDB; using System.Collections.Generic; using System.ComponentModel; using System.IO; namespace CaeKnowledge.View { internal class CuttingParameterConverter : StringConverter { public override bool GetStandardValuesSupported(ITypeDescriptorContext context) => true; public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) => true; public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { var items = new List(); var fullPath = CaeGlobals.Tools.GetLiteDatabase(); if (fullPath == null || !File.Exists(fullPath)) { return new StandardValuesCollection(items); } using (var db = new LiteDatabase(fullPath)) { var col = db.GetCollection("cutting_parameters"); if (col.Count() > 0) { items.AddRange(col.Query().OrderBy(x => x.Pid).Select(x => x.Pid).ToEnumerable()); } } return new StandardValuesCollection(items); } } }