Всем доброго времени суток.
Делал я тут на досуге лабу и столкнулся со следующими трудностями:
У меня есть программа-калькулятор COCOMO в котором реализовал следующий интерфейс: В каждом комбобоксе есть свой набор items'ов, выбор которых влияет на конечный результат. Например: если я в комбобоксе выбираю "Low" то программа должна понимать, что за этим low скрывается коэффициент 0,71.
По нажатию на кнопку будут по определенным формулам вычилсяться два поля, используя коэффициенты из каждого комбобокса.
Вопрос: как реализовать задумку не отходя от mvvm концепции?
В голову приходят только property отдельно для каждого из комбобоксов. Но должен же быть способ изящнее, разве нет?
P.s. В проекте использую фреймворк catel
Я бы завёл для вашего показателя отдельную структуру данных. Например, такую:
class Grade
{
public double Value { get; }
public string Name { get; }
// ещё поля по вкусу
internal Grade(double value, string name) { Value = value; Name = name; }
}
Затем, можно завести список (или списки) возможных показателей.
static class GradeGroups
{
private static Grade High = new Grade(0.73, "High");
private static Grade Medium = new Grade(0.72, "Medium");
private static Grade Low = new Grade(0.71, "Low");
public static IEnumerable<Grade> All = new[] { High, Medium, Low };
// определите тут другие группы, если надо
}
Теперь, можно пользоваться этим так:
<ComboBox ItemsSource="{x:Static local:GradeGroups.All}"
SelectedItem="{Binding AnalyticalSkills}"
DisplayMemberPath="Name"/>
Разумеется, вам придётся в VM положить свойство AnalyticalSkills
типа Grade
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Исходные данные : БД - MSSQL, Проект на C#, Подход Entity - Model First
В своё время мне не удалось найти устраивающий меня SQL-парсер, и я начал писать свой, потом бросилСейчас думаю вернуться к этому делу, желательно...
Написать консольное приложение, реализующее работу с файламиПриложение должно обладать следующей функциональностью: