Skip to Content
Programming WPF, 2nd Edition
book

Programming WPF, 2nd Edition

by Chris Sells, Ian Griffiths
August 2007
Intermediate to advanced
864 pages
25h 52m
English
O'Reilly Media, Inc.
Content preview from Programming WPF, 2nd Edition

Limitations of WPF/HWND Interop

As useful as WPF's integration with other presentation technologies is, because WPF's approach to rendering and composition is radically different from the way Win32 UIs have previously worked, there are some limitations to how you can mix the two. Essentially, the new features that WPF offers do not translate back into the old world. The old UI technologies still have the same limitations they always did, even when being hosted by a WPF application.

Airspace

The most important thing to understand is the principle of airspace: within any single top-level window, each pixel belongs to exactly one technology. So, a single pixel must belong either to WPF or to Win32.[125]

One of the upshots of the airspace principle is that the clip region of a UI element does not apply to any HWND-based children. This is a nonobvious restriction, and it applies because clipping is a composition feature. (Internally, it depends on a UI element and all its children being rendered, and then having the rendered output clipped. A Win32 element cannot render into the internal intermediate buffers that WPF uses to perform clipping.) For example, here we're nesting three Windows Forms controls inside a clipped WPF Grid:

<Grid ...>
  ...

  <Grid.Clip>
    <StreamGeometry>M174,0 348,174 174,348 0,174 z</StreamGeometry>
  </Grid.Clip>
  <!-- properly clipped -->
  <Rectangle ...>...</Rectangle>

  <!-- properly clipped -->
  <TextBlock ...>
    WPF<LineBreak />
    WPF<LineBreak />
    WPF
  </TextBlock>
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Practical WPF Charts and Graphics

Practical WPF Charts and Graphics

Jack Xu
Illustrated WPF

Illustrated WPF

Daniel Solis
Programming C# 10

Programming C# 10

Ian Griffiths

Publisher Resources

ISBN: 9780596510374Errata Page