Когда только начал разработку CodeKeeper'а, хотел сделать его в mac'овском стиле, однако понял, что в результате погони за "красявостими" начинает страдать функционал, а это считаю недопустимым. В итоге решил воспользоваться стандартными контролами, которые, впрочем, обеспечивают бОльшую функциональность, нежели, опять же, красивые контролы. В частности на замену sidebar'у собственного производства пришел стандартный TreeViewControl, который, несмотря на свою стандартность, может обеспечивать неограниченную степень вложенности, что для категорий актуально. К примеру, разработчик занимается созданием сайта, у него есть набор сниппетов как в PHP, так и в JavaScript, так и в HTML. В дальнейшем свои наработки он планирует использовать где-либо еще. Соответственно, ему потребуется примерно следующая структура:
Web-Shop
+ HTML
|+Template
||- Meta
||- Header
||- Body
||- Navigation
||- Footer
|+ Chunks
||- Breadcrumbs
||- SearchForm
|+ JavaScript
||+ jQuery
|||- Slider
|||- AjaxSearch
+ PHP
|- Front-end production editor
|- Price uploader
|- XML Parser
То есть, число вложенных категорий не должно быть фиксированным. Это первый момент. Второй момент - это диалоговые окна. Дело в том, что функция |form|.ShowDialog() подразумевает то, что программа запрашивает у пользователя некие данные, и до момента их ввода не позволяет пользователю работать с другими частями программы, кроме того функция |form|.ShowDialog() способна возвращать в функцию, ее вызвавшую данные, которые пользователь ввел в |form|. В случае же с использованием UserControl я пока не знаю, как создать подобный функционал, но больший вопрос в целесообразности "придумывания велосипеда". Все уже есть. Так что, возвращаемся к истокам, старому доброму "венику"...
Комментариев нет:
Отправить комментарий