Windows Vista Forums
Vista Forums Home Join Vista Forums Windows 7 Forum Vista Tutorials Tags
Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks.

Go Back   Vista Forums > Misc Newsgroups > Avalon

Vista - how to populate an explicitely loaded DataTemplate?

 
 
Old 07-23-2007   #1 (permalink)
Lloyd Dupont


 
 

how to populate an explicitely loaded DataTemplate?

I am working on some drag and drop code.
When some data is moved over a target which accept it I want to show a data
preview.

For this I attempt to create an UIElement with the default DataTemplate.
Problem is, I don't know how to setup the UIElement returned by the
DataTemplate! (i.e. setup it binding correctly)

===== pseudo code: =======
IDataObject ido = ......;
object data = ido.GetData("some key");
FrameworkElement target = sender as FrameworkElement;
DataTemplate dt = target.FindResource(data.GetType()) as DataTemplate;
UIElement ui = dt.LoadContent() as UIElement;

// NOW HOW DO I SET UP DATA BINDING?
ui.....= .....
==================

PS: I do need to get the UIElement, as I measure it to position it
relatively to the mouse position.


My System SpecsSystem Spec
Old 07-28-2007   #2 (permalink)
Laurent Bugnion, MVP


 
 

Re: how to populate an explicitely loaded DataTemplate?

Hi,

Lloyd Dupont wrote:
> I am working on some drag and drop code.
> When some data is moved over a target which accept it I want to show a
> data preview.
>
> For this I attempt to create an UIElement with the default DataTemplate.
> Problem is, I don't know how to setup the UIElement returned by the
> DataTemplate! (i.e. setup it binding correctly)
>
> ===== pseudo code: =======
> IDataObject ido = ......;
> object data = ido.GetData("some key");
> FrameworkElement target = sender as FrameworkElement;
> DataTemplate dt = target.FindResource(data.GetType()) as DataTemplate;
> UIElement ui = dt.LoadContent() as UIElement;
>
> // NOW HOW DO I SET UP DATA BINDING?
> ui.....= .....
> ==================
>
> PS: I do need to get the UIElement, as I measure it to position it
> relatively to the mouse position.


Databinding in code is done using the Binding class:
http://msdn2.microsoft.com/en-us/lib...a.binding.aspx

There is an example here:
http://msdn2.microsoft.com/en-us/library/ms742863.aspx

Is that what you're after?

HTH,
Laurent
--
Laurent Bugnion [MVP ASP.NET]
Software engineering, Blog: http://www.galasoft.ch
PhotoAlbum: http://www.galasoft.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
My System SpecsSystem Spec
Old 07-29-2007   #3 (permalink)
Lloyd Dupont


 
 

Re: how to populate an explicitely loaded DataTemplate?

> Databinding in code is done using the Binding class:
> http://msdn2.microsoft.com/en-us/lib...a.binding.aspx
>
> There is an example here:
> http://msdn2.microsoft.com/en-us/library/ms742863.aspx
>
> Is that what you're after?
>

Not really, but....

1. thanks for answering
2. I found what I need:

--- get the data ---
IDataObject ido = ......;
object data = ido.GetData("some key");

--- show it with the default template ---
ContentControl c = new ContentControl();
c.Content = data;

c.Content could be anything, unlike what the documentation states (UIElement
or string)

My System SpecsSystem Spec
Old 07-30-2007   #4 (permalink)
Laurent Bugnion, MVP


 
 

Re: how to populate an explicitely loaded DataTemplate?

Hi,

Lloyd Dupont wrote:
> --- get the data ---
> IDataObject ido = ......;
> object data = ido.GetData("some key");
>
> --- show it with the default template ---
> ContentControl c = new ContentControl();
> c.Content = data;
>
> c.Content could be anything, unlike what the documentation states
> (UIElement or string)


I just understood what you were trying to do!! Sorry for not getting it
faster :-)

Laurent
--
Laurent Bugnion [MVP ASP.NET]
Software engineering, Blog: http://www.galasoft.ch
PhotoAlbum: http://www.galasoft.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
My System SpecsSystem Spec
Old 07-30-2007   #5 (permalink)
Lloyd Dupont


 
 

Re: how to populate an explicitely loaded DataTemplate?

> I just understood what you were trying to do!! Sorry for not getting it
> faster :-)
>

No worries!
My explanations might have been confusing I admit.... ;-)


My System SpecsSystem Spec
 

Thread Tools


Similar Threads
Thread Forum
DataTemplate .NET General


Vista Forums is an independent web site and has not been authorized,
sponsored, or otherwise approved by Microsoft Corporation.
"Windows Vista", the Start Orb, and related materials are trademarks of Microsoft Corp.
© Designer Media Ltd

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46