Windows Vista Forums
Vista Forums Home Join Vista Forums Donate Vista Tutorials Tags

Welcome to Vista Forums we are your forum to discuss Windows Vista x64 and x86 systems. Whether you need help or just want to post an idea you have on Vista, this is the forum for you.
Register at Vista forums...the world biggest Windows Vista resource Join Vista Forums Now

Go Back   Vista Forums > Microsoft Technical Newsgroups > Avalon

DataBinding to object in external assembly

Update your Vista Drivers Update Your Drivers Now!!
Closed Thread
 
Thread Tools Display Modes
Old 02-13-2007   #1 (permalink)
Philipp Schmid
Guest


 

DataBinding to object in external assembly

For the live of me I cannot get a simple databinding scenario to work! Here
are my repro steps:

1. Create WPF Application solution (say WindowsApplication1).
2. Create class library project w/in the same solution (ClassLibrary1)
3. Implement a simple class in ClassLibrary1:

namespace ClassLibrary1
{
public class Class1
{
public Class1() { }

private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
}
}


4. Add a project reference to WindowsApplication1 using the project tab and
referencing ClassLibrary1.

5. Add the following to Window1.xaml


<? Mapping XmlNamespace="eco" ClrNamespace="ClassLibrary1"
Assembly="ClassLibary1" ?>
< Window x:Class =" WindowsApplication2.Window1"
xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml"
Title= "WindowsApplication2" Height="300" Width="300"
xmlns:eco ="eco"
>

< Window.Resources >
<eco:Class1 x:Name =" foo" />
</ Window.Resources >
< Grid>
</ Grid>
</ Window>

For me this results in the following compilation error:

Error 2 The tag 'Class1' does not exist in XML namespace 'eco'. Line 9
Position 6. c:\temp\WindowsApplication2\WindowsApplication2\Window1.xaml 9 6
WindowsApplication2

What am I missing? Clearly it doesn't understand the reference to
ClassLibrary1.dll. I've tried linking directly before with the same result.
Signing the assembly also doesn't seem to have an effect (I haven't tried the
fully qualified name yet).

BTW, these repro steps are a simplification of a more extensive scenario
involving ObservableReadOnlyCollection<T> to bind to a ListBox.

-- Philipp Schmid

My System SpecsSystem Spec
Old 02-14-2007   #2 (permalink)
Julie Knibbe
Guest


 

Re: DataBinding to object in external assembly

For me it works just fine.

Try to use another mapping syntax :
xmlns:eco="clr-namespace:ClassLibrary1;assembly=ClassLibrary1"

See
http://www.sellsbrothers.com/writing...hangeNotes.htm



"Philipp Schmid" <PhilippSchmid@discussions.microsoft.com> a écrit dans le
message de news: F6C6D426-8D5A-47D8-8073-6BFCEF8E6C34@microsoft.com...
> For the live of me I cannot get a simple databinding scenario to work!
> Here
> are my repro steps:
>
> 1. Create WPF Application solution (say WindowsApplication1).
> 2. Create class library project w/in the same solution (ClassLibrary1)
> 3. Implement a simple class in ClassLibrary1:
>
> namespace ClassLibrary1
> {
> public class Class1
> {
> public Class1() { }
>
> private string _name;
> public string Name
> {
> get { return _name; }
> set { _name = value; }
> }
> }
> }
>
>
> 4. Add a project reference to WindowsApplication1 using the project tab
> and
> referencing ClassLibrary1.
>
> 5. Add the following to Window1.xaml
>
>
> <? Mapping XmlNamespace="eco" ClrNamespace="ClassLibrary1"
> Assembly="ClassLibary1" ?>
> < Window x:Class =" WindowsApplication2.Window1"
> xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
> xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml"
> Title= "WindowsApplication2" Height="300" Width="300"
> xmlns:eco ="eco"
> >

> < Window.Resources >
> <eco:Class1 x:Name =" foo" />
> </ Window.Resources >
> < Grid>
> </ Grid>
> </ Window>
>
> For me this results in the following compilation error:
>
> Error 2 The tag 'Class1' does not exist in XML namespace 'eco'. Line 9
> Position 6. c:\temp\WindowsApplication2\WindowsApplication2\Window1.xaml 9
> 6
> WindowsApplication2
>
> What am I missing? Clearly it doesn't understand the reference to
> ClassLibrary1.dll. I've tried linking directly before with the same
> result.
> Signing the assembly also doesn't seem to have an effect (I haven't tried
> the
> fully qualified name yet).
>
> BTW, these repro steps are a simplification of a more extensive scenario
> involving ObservableReadOnlyCollection<T> to bind to a ListBox.
>
> -- Philipp Schmid



My System SpecsSystem Spec
Old 02-14-2007   #3 (permalink)
Philipp Schmid
Guest


 

Re: DataBinding to object in external assembly

Indeed this works for me! I was looking at some older examples.

-- Philipp Schmid


"Julie Knibbe" wrote:

> For me it works just fine.
>
> Try to use another mapping syntax :
> xmlns:eco="clr-namespace:ClassLibrary1;assembly=ClassLibrary1"
>
> See
> http://www.sellsbrothers.com/writing...hangeNotes.htm
>
>
>
> "Philipp Schmid" <PhilippSchmid@discussions.microsoft.com> a écrit dans le
> message de news: F6C6D426-8D5A-47D8-8073-6BFCEF8E6C34@microsoft.com...
> > For the live of me I cannot get a simple databinding scenario to work!
> > Here
> > are my repro steps:
> >
> > 1. Create WPF Application solution (say WindowsApplication1).
> > 2. Create class library project w/in the same solution (ClassLibrary1)
> > 3. Implement a simple class in ClassLibrary1:
> >
> > namespace ClassLibrary1
> > {
> > public class Class1
> > {
> > public Class1() { }
> >
> > private string _name;
> > public string Name
> > {
> > get { return _name; }
> > set { _name = value; }
> > }
> > }
> > }
> >
> >
> > 4. Add a project reference to WindowsApplication1 using the project tab
> > and
> > referencing ClassLibrary1.
> >
> > 5. Add the following to Window1.xaml
> >
> >
> > <? Mapping XmlNamespace="eco" ClrNamespace="ClassLibrary1"
> > Assembly="ClassLibary1" ?>
> > < Window x:Class =" WindowsApplication2.Window1"
> > xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
> > xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml"
> > Title= "WindowsApplication2" Height="300" Width="300"
> > xmlns:eco ="eco"
> > >

> > < Window.Resources >
> > <eco:Class1 x:Name =" foo" />
> > </ Window.Resources >
> > < Grid>
> > </ Grid>
> > </ Window>
> >
> > For me this results in the following compilation error:
> >
> > Error 2 The tag 'Class1' does not exist in XML namespace 'eco'. Line 9
> > Position 6. c:\temp\WindowsApplication2\WindowsApplication2\Window1.xaml 9
> > 6
> > WindowsApplication2
> >
> > What am I missing? Clearly it doesn't understand the reference to
> > ClassLibrary1.dll. I've tried linking directly before with the same
> > result.
> > Signing the assembly also doesn't seem to have an effect (I haven't tried
> > the
> > fully qualified name yet).
> >
> > BTW, these repro steps are a simplification of a more extensive scenario
> > involving ObservableReadOnlyCollection<T> to bind to a ListBox.
> >
> > -- Philipp Schmid

>
>
>

My System SpecsSystem Spec
Closed Thread

Thread Tools
Display Modes



Similar Threads
Thread Thread Starter Forum Replies Last Post
datalist -- Object reference not set to an instance of an object. Deere .NET General 0 08-31-2008 09:09 AM
Can you reference a XAML Resource from an External Assembly? wackyphill@yahoo.com Avalon 3 02-05-2007 06:52 AM
Testing object arrays using Compare-Object and -contains Alex K. Angelopoulos [MVP] PowerShell 2 08-31-2006 05:57 PM
Adding canonical aliases for Compare-Object, Measure-Object, New-Object Alex K. Angelopoulos [MVP] PowerShell 2 05-26-2006 07:58 AM


Vistax64.com 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 2005-2008

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 47 48 49 50 51