WPF 3D is not as integrated as the 2D stuff for this version.
You can style listbox items to each have a viewport - you can bind textures
to materials. It's not full proof because again, 3D is not as integrated.
You can use a single Viewport3D, but you are on your own at that point. I
have a List3D control at http://www.therhogue.com/WinFX
- graph3D sample.
It allows for binding. It's an items control and a middleman...binding goes
through it and then the visuals are interpreted into the viewport.
> I'm looking to create a control similar to the winforms listview (eg it has
> different icon styles, list mode, details, etc) except that it uses the 3d
> stuff in WPF to make each object a 3d mesh instead of an icon. Right now I
> just made a custom control with a big viewport3d in it and am going to do all
> to work myself (which sucks). My question is: is there a better way?
> Previously I've created custom listboxes by using databinding and the
> DataTemplate stuff which is really awesome and slick. Can I do something
> similar? (like inheriting from a 2d control and using all its layout logic
> and containers to support databinding) One way i was thinking was to use a
> listview then in the datatemplate make a new viewport for each item.
> Although I'm not sure if this would allow things like making the items fly to
> their new positions when the sorting criteria changes. Also everything i know
> about windows and 3d programming tells me that making 100s of viewports is a
> bad idea performance wise, although since objects by default can extend past
> the viewport edges, avalon may be doing things behind the scenes differently
> than I assume. Any insight would be appreciated.