Всем доброго времени суток.
Делал я тут на досуге лабу и столкнулся со следующими трудностями:
У меня есть программа-калькулятор 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
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Исходные данные : БД - MSSQL, Проект на C#, Подход Entity - Model First
В своё время мне не удалось найти устраивающий меня SQL-парсер, и я начал писать свой, потом бросилСейчас думаю вернуться к этому делу, желательно...
Написать консольное приложение, реализующее работу с файламиПриложение должно обладать следующей функциональностью: