问题代码
1 string xamlFormat = @"<Canvas Width=""40"" Height=""40"" RenderTransformOrigin=""0.5,0.5"">
2<Canvas.RenderTransform><ScaleTransform /></Canvas.RenderTransform>
3<Rectangle Width=""40"" Height=""40"" Fill=""{0}"" /></Canvas>";
4 string xaml = string.Format(xamlFormat, color);
1 string xamlFormat = @"<Canvas Width=""40"" Height=""40"" RenderTransformOrigin=""0.5,0.5"">
2<Canvas.RenderTransform><ScaleTransform /></Canvas.RenderTransform>
3<Rectangle Width=""40"" Height=""40"" Fill=""{0}"" /></Canvas>";
4 string xaml = string.Format(xamlFormat, color);
正常代码
1 string xamlFormat = @"<Canvas Width=""40"" Height=""40"" RenderTransformOrigin=""0.5,0.5""> <Canvas.RenderTransform><ScaleTransform /></Canvas.RenderTransform><Rectangle Width=""40"" Height=""40"" Fill=""{0}"" /></Canvas>";
2 string xaml = string.Format(xamlFormat, color);
1 string xamlFormat = @"<Canvas Width=""40"" Height=""40"" RenderTransformOrigin=""0.5,0.5""> <Canvas.RenderTransform><ScaleTransform /></Canvas.RenderTransform><Rectangle Width=""40"" Height=""40"" Fill=""{0}"" /></Canvas>";
2 string xaml = string.Format(xamlFormat, color);
目前发现的非法字符由\r\n,包括回车换行就出问题。如果你觉得上面写的不直观的话,可以改用StringBuilder来弄。