« first day (462 days earlier)      last day (64 days later) » 

7:08 AM
@FoggyFinder нет.
 
 
2 hours later…
9:18 AM
@FoggyFinder Я пробовал разными путями, по поисковикам неоднократно искал, там где находил во мнении сходятся на CanUserAddRows. Ну и соответственно я предполагал, что именно я и делаю ошибку.
 
 
5 hours later…
2:35 PM
@FoggyFinder вы скоро?(
у меня завтра защита
попробовал разные варианты
                dataPiker.DataContext = employer.dateOfBirth;
                departmentSelect.SelectedIndex = employer.department;
                roomSelect.SelectedValue = employer.room;
но ничего
 
 
2 hours later…
4:14 PM
@xomem обновите git и еще раз напишите как воспроизвести
(если конечно есть что обновлять)
 
 
4 hours later…
8:34 PM
@FoggyFinder вы тут?
@FoggyFinder есть
 
@xomem nen
 
выбираете обновить данные пользователя
id 20
получить данные
и посмотрите
какие поля заполняются, а какие нет
 
8:56 PM
@FoggyFinder воспроизвели?
 
значит не заполняются DateTimePicker и ComboBox-ы
 
боюсь вас потерять
поэтому пишу
@FoggyFinder да
 
а где заполнение ComboBox?
то есть индекс присвоили, а сами значения не извлекли
 
dateOfBirth = Convert.ToString( dateOfBirth), position = Convert.ToInt32(position), department = Convert.ToInt32(department), room = Convert.ToInt32(room)
dataPiker.DataContext = employer.dateOfBirth;
departmentSelect.SelectedIndex = employer.department;
roomSelect.SelectedValue = employer.room;
@FoggyFinder как?
 
так-же как при добавлении
редактирование и добавление по сути не отличаются ничем
 
9:09 PM
это (positionSelect.SelectedItem as SecurityPosition).positionId?
 
нет
вспоминайте какое свойство отвечает за данные
с DatePicker - dataPiker.DataContext
почему вы решили что за дату отвечает DataContext?
 
не помню
        positionSelect.DisplayMemberPath = "positionName";
 
мимо
 
            roomSelect.ItemsSource = rooms;
 
да
с датой тоже просто
dataPiker.SelectedDate = DateTime.Parse(employer.dateOfBirth);
хотя лучше изначально в классе для свойства задать DateTime
 
9:16 PM
не так? roomSelect.ItemsSource = employer.room;
 
нет
 
да
секунду
и не так
                roomSelect.ItemsSource = roomSelect.SelectedIndex(employer.room);
 
абсолютно
 
бред пишу
 
у вас ведь есть пример с добавлением
кажется вы его сами не так давно делали
 
9:20 PM
этот
var rooms = Querys.fillRoom(departmentID).ToArray();
roomSelect.ItemsSource = rooms;
roomSelect.DisplayMemberPath = "roomName";?
@FoggyFinder если бы вы только знали
как мне надоело это задание
я жалею, что не выбрал access
как все
 
да именно
 
когда оказалось, что нас не учили c#
DisplayMemberPath - отображать памятный путь?
что это значит?
 
для указания названия свойства для отображения
 
странное название
 
почему?
 
9:23 PM
для указания названия свойства для отображения - я бы назвал DisplayPropertyName
так данный кусок кода просто заполняет комнаты в зависимости от отдела
точнее кабинеты
 
да
 
значит - это не нужно
                var rooms = Querys.fillRoom(departmentID).ToArray();
 
нужно не это, но суть точно такая-же
1. Выбрать нужную информацию из БД 2. Показать пользователю
 
стоп
вы предлагаете работать с несколькими запросами в данной задаче?
этого не достаточно Employer employer = Querys.GetEmployDataByID(idBox.Text);
?
1. Выбрать нужную информацию из БД - employer
для этого и есть
 
в чем по-вашему принципиальная разница между добавлением сотрудника и обновлением информации о нем?
нет
 
9:28 PM
@FoggyFinder в обновлении запись уже существует
а в добавлении её нет
 
да, а в остальном?
^ вот этот компонент отвечает и за редактирование и за добавление студента
там тоже есть comboBox с постоянной информацией - пол
[Female; Male]
|> Signal.constant
|> Bind.Explicit.oneWay source "Genders"
то есть он заполняется вне зависимости от того редактируем мы данные или добавляем
просто скопируйте эту часть из добавления раз уж решили разделить на две части
 
System.NullReferenceException: 'Object reference not set to an instance of an object.'
                if (departmentSelect.SelectedValue.ToString() != "")
стоп
у меня же id отдела будет ноль
мне нужно от чего то отталкиваться
 
3 mins ago, by Foggy Finder
просто скопируйте эту часть из добавления раз уж решили разделить на две части
 
я скопировал
 
(hint: из конструктора)
 
нет
напишите комментарии к каждой строчке
 
if (departmentSelect.SelectedValue.ToString() != "")// если отдел не пустой(в данном варианте это не нужно)
почему вы считаете что в departmentSelect.SelectedValue.ToString() хранится отдел?
все, у меня ужин
 
@FoggyFinder номер отдела в бд
а как еще?
deparment - отдел
 
подумайте что такое departmentSelect?
 
9:43 PM
"Список должностей"
 
правильно, но он не заполнен, нигде что даст такая проверка? ничего
 
так я написал, что это не нужно
(в данном варианте это не нужно)
почему нельзя просто из существующей записи взять?
    public string dateOfBirth { get; set; }
    public int position { get; set; }
    public int department { get; set; }
    public int room { get; set; }
вот
^
@FoggyFinder приятного аппетита
 
9:59 PM
@xomem вы и возьмете - текущий отдел
 
кажется понял
 
но весь список надо все равно загружать
 
черт
ничего
int departmentID = employer.department;// заполняем id

var rooms = Querys.fillRoom(departmentID).ToArray();//в зависимости от отдела даем возмоность выберать комнаты
roomSelect.ItemsSource = rooms;// даем информацию выше ^ selectBox
roomSelect.DisplayMemberPath = "roomName";//даем селекту roomName из ?????
и ничего
 
еще раз внимательно посмотрите как реализовано в добавлении
только там код в конструкторе а тут в обработчике события если правильно понял задумку
 
аааа
список нужно загружать
но еще нужно выбрать вставить ту комнату, что уже есть
 
10:04 PM
да
 
интересно
а, что если я вам скажу
что я не понимаю?
 
ну учитывая что завтра сдавать это не хорошо
а так не понимать это нормально просто недостаток практики и все
 
надеюсь комиссия не будет меня пытать))
мне кажется или решение не такое и сложное?
что вы скажете о человеке, которому нравится подобный контент?
я к тому
что уже час ночи
 
решение довольно простое
 
а мне еще другие обновления делать
не могли бы вы потолще намекнуть?
и cisco делать
@FoggyFinder але
вы тут?
але
пожалуйста
залипли на сусанина?
 
11:01 PM
чего вам стоит сказать решение?
учитываю , что до защиты < 11 часов
 
я же говорю - ужинал
 
ааа
я думал уже
раз написали
после того как сказали
 
мне его еще готовить нужно было
 
понял
 
11:17 PM
    var rooms = Querys.fillRoom(employer.room).ToArray();
    roomSelect.ItemsSource = rooms;
    roomSelect.DisplayMemberPath = "roomName";
    roomSelect.SelectedItem = rooms.First(x => x.roomId == employer.room);

    var positions = Querys.fillPosition().ToArray();
    positionSelect.ItemsSource = positions;
    positionSelect.DisplayMemberPath = "positionName";
    positionSelect.SelectedItem = positions.First(x => x.positionId == employer.position);

    var departmens = Querys.fillDepartment().ToArray();
вот как-то так
обработку для смены отдела добавите по аналогии как сделано с добавлением
 
до этого я бы не догадался бы
                positionSelect.SelectedItem = positions.First(x => x.positionId == employer.position);
спасибо
@FoggyFinder по анологии? а скопировать просто нельзя?
какая разница?
 
можно и просто скопировать
 
@FoggyFinder а так не работает
 
нужно добавить флаг чтобы вовремя описаться от события
раз уж решили заполнять все в обработчике события а не в конструкторе
 
@FoggyFinder что за флаг? binding?
 
11:25 PM
нет, bool
 
не понимаю задачи
 
if (!flag)
{
    departmentSelect.SelectionChanged += departmentSelect_SelectionChanged;
    flag = true;
}
чтобы не было множественной подписки
 
все
работает
спасибо еще раз
 
отлично, тогда удачи завтра
 
спасибо
так как вам сусанин?
 

« first day (462 days earlier)      last day (64 days later) »