Busyindicator на WPF для WinForms

Необходимо WPF Busyindicator, созданный в Expression blend, размещать на WinForms или Telerik -форме. При этом необходимо предоставить возможность делать активными любые контролы, расположенные на форме. Должно получиться следующее:

Программирование: Busyindicator на WPF для WinForms

Для начала
Читать дальше →

Некоторые подводные камни при использовании сессии

Рассмотрим типичный случай взаимодействия двух страниц в ASP.NET, одна из которых это таблица, а вторая это форма по редактированию записей: Grid и Edit. Кроме основной функции, Edit может также создавать новую запись, поэтому правильней будет назвать её Add/Edit.

Итак, какие сценарии у нас предусмотрены:
  • Редактирование существующей записи
  • Добавление новой записи


Читать дальше →

Вычисление MD5 хэша в .NET

Во время написания некого проекта на ASP.NET, мне понадобилось подключить к своему веб-сайту виджет авторизации ВКонтакте. Так как с JavaScript я вообще не знаком, а как таковых прямых примеров на подключение OpenAPI к веб-сайту я не нашел, возможно плохо искал, но скорее не было желания использовать чужую библиотеку, хотелось понять и изучить само подключение OpenAPI к моему веб-сайту. Я начал с тривиального, то-есть подключение виджета авторизации. Изучив небольшую документацию на сайте, принялся за дело.

Итак, я узнал, что last_name и прочие параметры передаются путем запросов. Собственно для проверки вошел ли пользователь используется зашифрованный MD5 хэш ID приложения, ID пользователя, и Secret key приложения. Отсюда логично то, что нужно путем обычных действий в C#, то-есть декодированием данного набора символов кодировкой UTF-8, вычислением хэша массива байтов и кодированием той-же кодировкой в string, получить зашифрованную строку. Но не тут то было…

Читать дальше →

Умный TextBlock

Недавно появилась необходимость отображения текста в определенной ограниченной области с переменным размером шрифта: таким образом, чтобы текст полностью заполнял отведенную ему область.
image

Читать дальше →

Еще один способ реализации Single Instance Application в .NET

Итак, возникла такая задача. На WPF пишется небольшое приложение (под .NET Framework 4 с рассчетом на пользователя Windows 7, а именно меня), а, заодно, и изучается сама технология WPF. Требуется не допускать запуска второго экземпляра приложения из-под того же пользователя.

Читать дальше →

Tcp Ping или проверка доступности удаленного сервиса

Понадобилось мне недавно какая-нибудь утилита, для проверки доступности удаленного сервера. Вроде все просто, запусти ping и все, но оказалось не так просто, на удаленной машине отключен ответ на ICMP запросы.

Немного поискав в сети понял, что мне нужен tcpping, но ничего подходящего не нашлось. Решил писать сам, в качестве среды разработки выбран MS Visual Studio 2010 Express.

Читать дальше →

Парадокс двух конвертов. Part 2 — C#.

Доброго времени суток!

Сегодня, во времена популяризации покера, актуальными становятся алгоритмы увеличения прибыли при недостаточном количестве информации. Многие занимаются вопросами нахождения наиболее эффективных алгоритмов.
Существует великое множество вероятностных задач и парадоксов, но особое место среди них занимает парадокс (задача) о двух конвертах.
Теоретические аспекты очень подробно описаны на википедии, возможные решение предложены на мембране.
Также эта тема уже обсуждалась на Хабре.
Я же предлагаю вашему вниманию реализацию данного парадокса на C#.

Читать дальше →

.Net: События в С#

Введение
Концептуальная роль событий заключается в следующем: Если какой-то объект хочет оповестить других о смене своего состояния, он запускает событие (или сигнал). Это событие может быть отловлено любым количеством объектом. Реакцией на событие, как правило, является вызов метода в отлавливающем объекте.
В языке C# события являются более развитой системой использование групповых делегатов.

Читать дальше →

Коммуникационные привязки в Windows Communication Framework (WCF)

Введение


Привязки описывают соглашения между клиентом и сервером о порядке передачи данных по сети. В привязке задается способ транспортировки, кодирование и протоколы, участвующие в коммуникации. WCF с помощью привязок инкапсулирует конфигурацию в различных сценариях коммуникации. Для наиболее распространенных сценариев – Web-служб, служб REST/POX и приложений на основе очередей – имеются уже готовые привязки. Например, привязка basicHttpBinding предназназначена для работы с Web-службами, созданными в ASP.NET или совместимыми со спецификацией WSI Basic Profile 1.1. Привязки ws2007HttpBinding и wsHttpBinding похожи на basicHttpBinding, но поддерживают больше возможностей, в частности надежную доставку и транзакции, а также основаны на более современных стандартах, таких, как WSAddressing. В таблице 1 перечислены 12 привязок, применяемых в разных сценариях коммуникации.
Читать дальше →