Files
wg_cpso/CaeKnowledge/View/CuttingParameterConverter.cs

38 lines
1.2 KiB
C#
Raw Normal View History

2026-03-25 18:20:24 +08:00
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<string>();
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<CuttingParameter>("cutting_parameters");
if (col.Count() > 0)
{
items.AddRange(col.Query().OrderBy(x => x.Pid).Select(x => x.Pid).ToEnumerable());
}
}
return new StandardValuesCollection(items);
}
}
}