Блог Ерёмина Андрея обо всём на свете…

Posts tagged ‘Business’

Glass-прозрачность в WPF


Как сделать Glass-прозрачность в WPF-приложении?

1) Разместите следующий код в файле класса окна к которому вы хотите добавить glass:

[StructLayout(LayoutKind.Sequential)]
public struct MARGINS
{
    public int cxLeftWidth;      // width of left border that retains its size
    public int cxRightWidth;     // width of right border that retains its size
    public int cyTopHeight;      // height of top border that retains its size
    public int cyBottomHeight;   // height of bottom border that retains its size
};

[DllImport("DwmApi.dll")]
public static extern int DwmExtendFrameIntoClientArea(
    IntPtr hwnd,
    ref MARGINS pMarInset);

2)свойство окна Background сделайте Transparent и добавьте следующий код к событию Loaded:

try
   {
      // Obtain the window handle for WPF application
      IntPtr mainWindowPtr = new WindowInteropHelper(this).Handle;
      HwndSource mainWindowSrc = HwndSource.FromHwnd(mainWindowPtr);
      mainWindowSrc.CompositionTarget.BackgroundColor = Color.FromArgb(0, 0, 0, 0);

      // Get System Dpi
      System.Drawing.Graphics desktop = System.Drawing.Graphics.FromHwnd(mainWindowPtr);
      float DesktopDpiX = desktop.DpiX;
      float DesktopDpiY = desktop.DpiY;

      // Set Margins
      NonClientRegionAPI.MARGINS margins = new NonClientRegionAPI.MARGINS();

      // Extend glass frame into client area
      // Note that the default desktop Dpi is 96dpi. The  margins are
      // adjusted for the system Dpi.
      margins.cxLeftWidth = Convert.ToInt32(5 * (DesktopDpiX / 96));
      margins.cxRightWidth = Convert.ToInt32(5 * (DesktopDpiX / 96));
      margins.cyTopHeight = Convert.ToInt32(((int)topBar.ActualHeight + 5) * (DesktopDpiX / 96));
      margins.cyBottomHeight = Convert.ToInt32(5 * (DesktopDpiX / 96));      int hr = NonClientRegionAPI.DwmExtendFrameIntoClientArea(mainWindowSrc.Handle, ref margins);
      //
      if (hr < 0)
      {
         //DwmExtendFrameIntoClientArea Failed
      }
   }
   // If not Vista, paint background white.
   catch (DllNotFoundException)
   {
      Application.Current.MainWindow.Background = Brushes.White;
   }

3) вот и всё.

image

Technorati Теги: ,,,,,

Windows LIVE – несколько пунктов, которые сделают вашу жизнь проще!


img_33742_microsoft-windows-live-logo_450x360

Итак, Windows LIVE это:

  1. Live ID

    — универсальный индефикатор, который позволит вам избежать регистрации на всех сайтах microsoft и некоторых других.

    live_id

  2. Windows LIVE Messenger – обменивайтесь мгновенными сообщениями между вашими друзьями практически из любого места: из вашего Windows-клиента, из java-приложения с вашего мобильного телефона, со страничек Hotmail’a и даже со страницы LIVE Spaces (при условии, что вы разместили там специальное дополнение).
  3. LIVE Contacts (Link)

    – это не просто список контактов в Windows LIVE, это ещё и универсальная телефонная и адресная книга, где вы можете хранить информацию о всех ваших джрузьях и знакомых. Более того, где бы вы не находились –с любого устройста с доступом в интернет вы всегда можете получить доступ к LIVE Contacts.
    contacts

  4. HotMail

    – почта, с потрясающим и удобным интерфейсом. Полностью интегрированна в Windows LIVE.

  5. Home Page (Link)

    – центр всего Windows LIVE. Здесь вы можете посмотреть, что нового у друзей, прочитать новости и добавить Web Activities (ваши действия в интернете: можете подключить twitter, lastfm, wordpress, liveinternet и многие другие), с помощью которых ваши контакты узнают, что нового у ВАС.
    home

  6. SKYDRIVE (Link), Фото (Link) и Избранное (Link)

    – 25 гигабайт для любых ваших файлов. Сделайте специальные папки для ваших друзей, личные папки и папки с публичным доступом. Где бы вы не находились, вы всегда сможете получить доступ к любимым фотографиям, документам и адресам сайтов.

  7. Windows LIVE Essential (Link)

    – уникальный набор приложений. Тут вам и Фото галерея, и Messenger, и Почтовый клиент, и Movie Maker, и даже программа, которая существенно облегчит создание записей для вашего блога. Аналогов таких программ, которые ещё к тому же могли бы работать с Windows LIVE, просто нет.

    essentials

  8. Календарь (Link) и События (Link)

    – незаменимая вещь для людей, кто ценит своё время. Отличный сервис для создания распорядка дня и просто для того, чтобы не пропустить ни одно, даже самое маленькое, событие в вашей жизни. С помощью событий вы сможете известить ваши контакты о готовящемся празднике, встрече или мероприятии, обсудить с ними детали или просто приятно провести время.

  9. Группы (Link)

    – создавайте группы по интересам, общайтесь в них с друзьями и коллегами, присоединяйтесь к уже созданным ранее.

  10. Family Safety (Link)

    – достаточно мощный сервис родительского контроля. Обезопасте своих детей от “нехороших” ресурсов в сети Интернет, а также ограничте им доступ к вашим файлам и папкам.

    family_safety

  11. Mobile (Link)

    – все основные сервисы Windows LIVE доступны и для мобильных телефонов, причём абсолютно не важно смартфон это или просто телефон с поддержкой Java ME (ранее известной как J2ME). Используйте контакты, почту, messenger, spaces и многие другие, чтобы всегда быть в курсе дел и не упускать ничего важного.

    mobile

  12. Live Sync (Link), Live Mesh (Link)

    – держите все нужные вам файлы обновлёнными, будь то на основном ПК, ноутбуке или мобильном телефоне. Не тратьте ваше драгоценное время на ручную синхронизацию устройст, просто подключите нужный девайс к сети Интернет и все ваши файлы будут обновлены автоматически.

  13. Windows Live Custom Domains (Link)

    – создайте домен Windows LIVE с почтой HotMail для личных или корпоративных целей и используйте его так, как вам будет удобно.

    domains

  14. Office Live Workspace (Link)

    – редактируйте и храните ваши документы прямо в сети с любого компьютера с доступом в Интернет.

    office

  15. Bing Translator (Link)

    – мощный интернет-переводчик. Получайте нужную вам информацию с любого ресурса на любом языке с помощью переводов в Bing Translator’e.

    translator

  16. Bing (Link)

    – новая поисковая система от Microsoft. Ищете всё, что вам нужно на просторах сети Интернет из любого сервиса Windows Live.

  17. Windows Live FrameIt (Link)

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

  18. MSN (Link)

    – новостной портал с поддержкой сервисов Windows LIVE. Читайте новости и используйте вашу почту, общайтесь с друзьями через messenger, играйте и получайте удовольствие.

    msn2

Итак, Windows LIVE это “Классно” не потому, что это by Microsoft, а просто потому, что это просто, удобно, надёжно и функционально. И никаких НО…smile_regular

Windows LIVE Tags: “windows, “live, “spaces, “messenger, “обзор, “microsoft

Облако меток