Avatar billede morten-hbm Nybegynder
21. oktober 2011 - 15:27 Der er 1 løsning

XamlParseException

Hej

Jeg har et problem, får en XamlParseException i min kode, men der står at det er i line 0, position 0. Fejlen kommer også kun sjældent, er ikke hver gang, og har svært ved at fremprovokere den hver gang.

Grunden til line 0, position 0 er fordi jeg laver min Xaml i c# via en XamlLoader.

Koden ser således ud:
#region
private static readonly string DayDataCellTemplate = @"<DataTemplate
        xmlns=""http://schemas.microsoft.com/client/2007""
        xmlns:x=""http://schemas.microsoft.com/winfx/2006/xaml""
        xmlns:converter=""clr-namespace:WorkBook.Client.Converter;assembly=WorkBook.Client""
        xmlns:local=""clr-namespace:WorkBook.Client.Views.Scheduling;assembly=WorkBook.Client"">
    <Grid>
        <Grid.Resources>
            <converter:BackGroundConverter x:Key=""BackGroundConverter"" />
            <local:CellConverter x:Key=""CellConverter"" />
            <local:CellScaleConverter x:Key=""CellScaleConverter"" />
            <local:ToolTipConverter x:Key=""ToolTipConverter"" />
        </Grid.Resources>
        <Grid Style=""{{StaticResource GridFillCell}}"" ToolTipService.ToolTip=""{{Binding {2}}}"">


            <!--DB color-->
            <Rectangle RenderTransformOrigin=""0.5,1"">
                <Rectangle.Fill>
                    <LinearGradientBrush>
                        <GradientStop Color=""{{Binding Converter={{StaticResource CellConverter}}, ConverterParameter='a{1}'}}"" Offset=""0"" />
                    </LinearGradientBrush>
                </Rectangle.Fill>
                <Rectangle.RenderTransform>
                    <CompositeTransform ScaleY=""1"" />
                </Rectangle.RenderTransform>
            </Rectangle>

            <!--Main Color-->
            <Rectangle RenderTransformOrigin=""0.5,1"">
                <Rectangle.Fill>
                    <LinearGradientBrush>
                        <GradientStop Color=""{{Binding Converter={{StaticResource CellConverter}}, ConverterParameter='{1}'}}"" Offset=""0"" />
                    </LinearGradientBrush>
                </Rectangle.Fill>
                <Rectangle.RenderTransform>
                    <CompositeTransform ScaleY=""{{Binding Converter={{StaticResource CellScaleConverter}}, ConverterParameter='{1}'}}"" />
                </Rectangle.RenderTransform>
            </Rectangle>

            <!--Gradient color-->
            <Rectangle RenderTransformOrigin=""0.5,1"">
                <Rectangle.Fill>
                    <LinearGradientBrush EndPoint=""0,0"" StartPoint=""0,1"">
                        <GradientStop Offset=""1"" Color=""Transparent""/>
                        <GradientStop Color=""#33000000""/> 
                    </LinearGradientBrush>
                </Rectangle.Fill>
                <Rectangle.RenderTransform>
                    <CompositeTransform ScaleY=""{{Binding Converter={{StaticResource CellScaleConverter}}, ConverterParameter='{1}'}}"" />
                </Rectangle.RenderTransform>
            </Rectangle>

            <!--Text-->
            <TextBlock Style=""{{StaticResource WBColumnNumberTextBlock}}"" Text=""{{Binding {0}, StringFormat=N2}}"" FontSize=""10""/>
        </Grid>
    </Grid>
</DataTemplate>";
#endregion
#region
private static readonly string HoursNotAllocedCellTemplate = @"<DataTemplate
                xmlns=""http://schemas.microsoft.com/client/2007""
                xmlns:x=""http://schemas.microsoft.com/winfx/2006/xaml""
                xmlns:converter=""clr-namespace:WorkBook.Client.Converter;assembly=WorkBook.Client"">
            <Grid>
                <Grid.Resources>
                    <converter:BackGroundConverter x:Key=""BackGroundConverter"" />
                </Grid.Resources>
                <Grid Style=""{{StaticResource GridFillCell}}"">
                    <TextBlock Style=""{{StaticResource WBColumnNumberTextBlock}}"" Text=""{{Binding {0}, StringFormat=N2}}"" FontSize=""10""/>
                </Grid>
            </Grid>
        </DataTemplate>";
#endregion
#region
private static readonly string TotalCellTemplate = @"<DataTemplate
        xmlns=""http://schemas.microsoft.com/client/2007""
        xmlns:x=""http://schemas.microsoft.com/winfx/2006/xaml""
        xmlns:converter=""clr-namespace:WorkBook.Client.Converter;assembly=WorkBook.Client""
        xmlns:local=""clr-namespace:WorkBook.Client.Views.Scheduling;assembly=WorkBook.Client"">
    <Grid>
        <Grid.Resources>
            <converter:BackGroundConverter x:Key=""BackGroundConverter"" />
            <local:CellConverter x:Key=""CellConverter"" />
            <local:CellScaleConverter x:Key=""CellScaleConverter"" />
        </Grid.Resources>
        <Grid Style=""{{StaticResource GridFillCell}}"">
            <!--Color-->
            <Rectangle RenderTransformOrigin=""0.5,1"">
                <Rectangle.Fill>
                    <LinearGradientBrush>
                        <GradientStop Color=""{{Binding Converter={{StaticResource CellConverter}}, ConverterParameter='Total'}}"" Offset=""0"" />
                    </LinearGradientBrush>
                </Rectangle.Fill>
                <Rectangle.RenderTransform>
                    <CompositeTransform ScaleY=""{{Binding Converter={{StaticResource CellScaleConverter}}, ConverterParameter='Total'}}"" />
                </Rectangle.RenderTransform>
            </Rectangle>
            <!--Gradient color-->
            <Rectangle RenderTransformOrigin=""0.5,1"">
                <Rectangle.Fill>
                    <LinearGradientBrush EndPoint=""0,0"" StartPoint=""0,1"">
                        <GradientStop Offset=""1"" Color=""Transparent""/>
                        <GradientStop Color=""#33000000""/> 
                    </LinearGradientBrush>
                </Rectangle.Fill>
                <Rectangle.RenderTransform>
                    <CompositeTransform ScaleY=""{{Binding Converter={{StaticResource CellScaleConverter}}, ConverterParameter='Total'}}"" />
                </Rectangle.RenderTransform>
            </Rectangle>
            <!--Text-->
            <TextBlock Style=""{{StaticResource WBColumnNumberTextBlock}}"" Text=""{{Binding {0}, StringFormat=N2}}"" FontSize=""10""/>
        </Grid>
    </Grid>
</DataTemplate>";
#endregion

Årsagen til at jeg har det i en XamlLoader er fordi det er kolonner til et datagrid som bliver lavet dynamisk.

Jeg har 2 Converter på, hvor CellScaleConverter enten returnere et tal mellem 0.0 til 1.0 eller 1, aldrig null. Den anden CellConverter returnere en farve kode som f.eks. #0000FF, heller ikke null på noget tidspunkt.

Nogen der kan gennemskue hvor fejlen evt. kan være placeret henne?
Avatar billede morten-hbm Nybegynder
15. november 2011 - 10:59 #1
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester