![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Lion_Smith |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 14.3.2008 Репутация: нет Всего: нет |
В VS 2008 я создал WPF проект на C#. Создал кнопку, открыл её свойства в окне Propertis и не обнаружил привычной кнопки с молниями для просмотра событий (Events), которые данная кнопка может генерировать. Меня это очень огорчило. Мне необходимо создать обработчик события MouseLeftButtonDown. В таком же проекте на VB .Net найти события можно используя раскрывающиеся списки вверху окна с VB .Net кодом и двойным щелчком сгенерировать код нужного тебе события.
А что делать в C#? Двойной щелчёк по кнопке и это всё что дали нам разработчики в Microsoft? А как мне описать события MouseLeftButtonDown? Это сообщение отредактировал(а) Lion_Smith - 25.3.2008, 12:49 |
|||
|
||||
Lion_Smith |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 14.3.2008 Репутация: нет Всего: нет |
Неужели ни кто не знает? Пипец.. а как вы в VS 2008 программируите?? Или тут все такие мегамозги?
|
|||
|
||||
Dennnis |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 23.3.2008 Репутация: 1 Всего: 4 |
Или у тебя VS 2008 кривая или ты тупишь.
--------------------
Get Rich or Die Tryin' |
|||
|
||||
Lion_Smith |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 14.3.2008 Репутация: нет Всего: нет |
VS 2008 скачал из инета с официального сайта Майкрософт, буквально как только её выложили. Может месяца 2 назад, точно не помню!
В простом проекте WindowsForm у меня ни каких проблем нет. А вот в WPF проектах, которые используют фрэймворк 3.5 есть вот такое маленькое неудобство. Читал, где-то что для VS 2005 похожая проблема была, неужели не исправили до сих пор? В файле приложении лежит снимок окна VS 2008 Присоединённый файл ( Кол-во скачиваний: 26 ) ![]() |
|||
|
||||
Dennnis |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 23.3.2008 Репутация: 1 Всего: 4 |
Извини, это я ступил
![]() Там реально только одно событие Click, и даже в Xaml'е ничего не пропишешь, если только сам не унаследуешь от System.Windows.Controls.Primitives.ButtonBase и не реализуешь OnMouseMove, OnKeyUp, или чё те надо ![]() --------------------
Get Rich or Die Tryin' |
|||
|
||||
Lion_Smith |
|
||||||||||||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 14.3.2008 Репутация: нет Всего: нет |
Кароче, как было!
![]() Берём VS 2008! Создаём новый WPF проект (хоть оконный, хоть для браузера.. один хрен)! Как известно технология WPF входит в состав FW 3.0 и выше.. и радует нас тем, что интерфейс (считай всё окно, контролы на этом окне, их способ окрашивания, анимация, расположение, и всякого рода активность/события и свойства, которые в обычном WinForm проекте описывались на C# в файле Form1.Designer.cs) описывается в Window1.xaml на специальном XML подобном языке ориентированном на дизайнера. А код пишется программистом в Window1.xaml.cs. На самом деле очень удобно! ![]() Всё бы ни чего! И по уму сделано. Но так как технология сама по себе революционная, то приходится мириться с некоторыми (надеюсь временными) неудобствами. В частности если раньше с событиями разбираться было просто выбрав в свойствах нужное нам и активировав его двойным щелчком, то теперь надо потратить время на то что бы написать шапку к событию иному чем простой клик, да и клик то иногда не так просто описать. Вот простой пример: В новом WPF проете закидываем на форму кнопку button1 и наблюдаем в XAML появление следующей строчки <Button Height="23" Margin="237.5,133.75,306.25,0" Name="button1" VerticalAlignment="Top">Button</Button>:
Привычно дважды щёлкаем по этой кнопке и в C# появляется:
а если вернуться обратно в XAML, то мы заметим следующее изменение в описании кнопки:
Теперь мы знаем механизм добавления события к любому элементу WPF при его описании. Правда реализовывать этот механизм для любого другого события придётся ручками.. Гибкость на грани фантастики! Все говорим спасибо разработчикам в Microsoft! ![]() ПРОДОЛЖАЕМ: Добавим на форму элемент Label и сделаем так, что бы можно было таскать форму за этот самый Label. 1) закидываем на форму Label и наблюдаем в XAML следующую строчку:
в ручную добавлем к нему событие
и так же в ручную в C# пишем обработчик события:
Если не знаем как писать правильно обработчик для какого-нибудь события, то его можно создать в WinForms и потом Ctrl+C, Ctrl+V перенести в вашу программу. Всё! Вот так теперь и выкручиваемся! PS: Для людей практикующих VB.Net таких сложностей нет. Там всё просто. Почему бы уже не скрестить функциональность окошка кодинга VB с окном кодинга C#, ведь так удобно было бы... Добавлено через 1 минуту и 37 секунд Вопрос решён! |
||||||||||||
|
|||||||||||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |