Leker lite med WPF men fastnar på XAML namespaces. Hittade felet själv. Det går helt enkelt inte att använda namespaces i Cider (VS2005) på något vettigt sätt. Tänkte bara lägga till att det fungerar bra med programmerbara bindings.XAML namespace
Jag har en xaml som ser ut så här:
<Window x:Class="WPFTest.TestWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPFTest"
Title="WPFTest" Height="439" Width="498"
>
<Window.Resources>
<ObjectDataProvider x:Key="testDataSource" ObjectType="{x:Type local:TestClass}"/>
</Window.Resources>
<Grid>
<ListBox Name="ListBoxItem1" Width="165"
ItemsSource="{Binding Source={StaticResource testDataSource}}"/>
</Grid>
</Window>
Problemet är att hur jag än bär mig åt så hittar den inte min TestClass.
Koden ovanför ger fel på xmlns:src="clr-namespace:WPFTest"
"The clr-namespace uri refers to an assembly not referenced by the project."
Hur bär jag mig åt för att lägga projektet som referens till sig själv?
Varför är det inga problem med "x:Class="WPFTest.TestWindow" som refererar till samma assembly?
Har provat med alla möjliga kombinationer utav clr-namespace: och assembly=.
WPFTest är både assembly name och default namespace.Sv: XAML namespace
(Finns ett sätt men föstår inte hur man skall kunna jobba så http://channel9.msdn.com/wiki/default.aspx/Cider.AugustCTPProjectLimitations)
Får försöka med programmerbara binding istället.Sv:XAML namespace
Det går också bra att ha kvar path:en i XAML filen så man behöver bara initiera källan.
<Grid Name="MyGrid">
<ListBox Name="ListBoxItem1" Width="165"
ItemsSource="{Binding Path=PropertyThatReturnsValue}"/>
</Grid>
Sen i koden skriver man
InitializeComponent();
MyGrid.DataContext = new MyClassWithData();
MyClassWithData.PropertyThatReturnsValue anropas nu automatiskt och fyller listboxen.