На этом уроке мы будем работать с буфером обмена и открывать сайты в браузере по умолчанию.
Задание: Создать программу для хранения паролей.
Дата отправки отчёта:
26 октября 2017 г.
Задание выполнено: за
6 час. 00 мин.
Чему научился:
"Как я перестал боятся и полюбил WPF" (c) Так как я всё делаю в WPF, то научился создавать элементы интерфейса WPF в коде, добавлять их в Grid и заменять элементы в Grid. Да, я знаю, что создание элементов WPFв коде убивает саму идею WPF, но как делать правильно и быстро через WPF я ещё не научился, а вот как делать медленно и неправильно через код я в общем представлял :)
Что было сложным:
Самым сложным было сделать динамический Grid с элементами интерфейса, потому что Grid для этого не предназначен и надо было использовать какой-нибудь Stack Panel. Но мне захотелось пойти сложным путём :)
Комментарии:
В общем я сделал менеджер паролей на WPF с динамическим добавлением и удалением записей. Хотел сделать ещё сохранение и чтение из файла... но в следующий раз. Если интересно, то по ссылке лежит архив проекта Password.rar
Архив проекта:Ссылка доступна после самостоятельного выполнения этого урока
Отчёт оценивали: 1. Евгений Волосатов+12146. Иван+115822. Павел Демьянов06452. Кирилл Шмойлов+115482. turpispopulu+17119. Новопашин Владимир+1791. Валерий Жданов+1459. Сергей Сергеевич+116066. Bodrik_torf+18275. Tekashnik+14395. Денис+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Отличный урок.
Научился открывать ссылки в браузере, копировать текст в буфер, выделять текст...
Сделал как в видео уроке, но решил доработать.
Захотел сделать не 3 строки в tableLayoutPanel, как в видео примере, а поле с выпадающим списком....Так же, чтобы поля логин и пароль были в единичном экземпляре и менялись в зависимости от выбора поля списка...Ну и до кучи, чтобы можно было прямо из формы дописывать новые значения в список...
1) Решил воспользоваться элементом ComboBox (заодно и разобраться как он работает). Добавил его вместо Label Link. Поле "логин" оставил как в видео примере. Поле пароль сделал звездочками TextBox (так больше нравится, чем кнопка)
2) Далее занялся вопросом наполнения списка. Оказалось не все так просто, как я думал))) Добавил в него предопределнные значения и понял, что мне это ничего не дает...Ведь в нем получится хранить имя сайт...А где тогда будут логин и пароль? Отложил вопрос и решил для начала добавить программно список сайтов.
3) На форме сделал несколько полей (название сайта, логин, пароль и кнопку “добавить”). Пометил их так же в tableLayoutPanel. Сделал CheckBox, решив от его состояния показывать поля добавления или нет... Пришлось поковыряться с привязками, чтобы отображение было нормальным. Так же долго возился с центрированием формы (если есть доп. меню или оно скрывается). В итоге погуглил и как результат смог написать функцию, которая определяет центральное положение формы с учетом изменения ее размеров в зависимости от того показано ли доп. меню или нет.
4) Когда все было готово и добавление в список наладилось, я заметил что, закрыв программу, список открывался пустой...Погуглив понял, что необходимо хранить данные в файле.. Сделал текстовый файл в папке с проектом. Написал функцию записи в файл при нажатии кнопки “добавить”. А при загрузке формы функцию которая считывает данный файл, парсит строки и наполняет список...
В общем проделал для себя огромную работу по прокачиванию навыков..Почти все вышеописанное делал впервые...Было очень интересно.
Затянул меня С# )))
Трудности: Искать в слепую методы и варианты решения поставленных перед собой задач.