Ich arbeite mit Xamarin.Forms und ich habe versucht, einen benutzerdefinierten Renderer für TabbedPage (UWP) zu machen und es funktioniert irgendwie ... Aber wenn ich Versuchen Sie, ein neues DataTemplate in C# zu erstellen, das auf einen anderen benutzerdefinierten Renderer verweist Ich erhalte eine Fehlermeldung und kann keine Lösung finden.DataTemplate kann Typ nicht finden, da unbekannter Namespace, Xamarin.Forms UWP
Windows.UI.Xaml.DataTemplate GetStyledHeaderTemplate() {
StringBuilder tpl = new StringBuilder();
tpl.Append("<DataTemplate xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"");
tpl.Append(" xmlns:tint=\"clr-namespace:MyNamespace.UI;assembly=MyNamespace\"");
tpl.Append(" xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\">");
tpl.Append("<StackPanel Margin=\"0\" Padding=\"5, 0\" VerticalAlignment=\"Top\">");
tpl.Append("<tint:ImageTinted TintColor=\"White\" Source=\"{Binding UWPIcon}\" Width=\"24\" Height=\"24\" Margin=\"0, 5, 0, 0\" />");
tpl.Append("<TextBlock Padding=\"0\" Margin=\"0, 0, 0, 4\"");
tpl.Append(" Text=\"{Binding Title}\" FontFamily=\"Segoe UI\" Foreground=\"White\" HorizontalAlignment=\"Center\" FontSize=\"13\" />");
tpl.Append("</StackPanel>");
tpl.Append("</DataTemplate>");
return (Windows.UI.Xaml.DataTemplate)XamlReader.Load(tpl.ToString());
}
Der Code funktioniert gut, wenn ich nicht
<tint:ImageTinted />
von der Datatemplate rufen Sie und ImageTinted arbeitet an anderen Orten.
Bitte, helfen!
Fehler:
Windows.UI.Xaml.Markup.XamlParseException occurred
HResult=0x802B000A
Message=The text associated with this error code could not be found.
The type 'ImageTinted' was not found because 'clr-namespace:MyNamespace.UI;assembly=MyNamespace' is an unknown namespace. [Line: 1 Position: 339]
Source=
StackTrace:
at Windows.UI.Xaml.Markup.XamlReader.Load(String xaml)
at MyNamespace.UWP.StyledTabbedPageRenderer.GetStyledHeaderTemplate() in D:\...\MyNamespace.UWP\UI\Renderers\StyledTabbedPageRenderer.cs:line 91
at MyNamespace.UWP.StyledTabbedPageRenderer.OnElementChanged(VisualElementChangedEventArgs e) in D:\...\MyNamespace.UWP\UI\Renderers\StyledTabbedPageRenderer.cs:line 35
at Xamarin.Forms.Platform.UWP.TabbedPageRenderer.SetElement(VisualElement element)
at Xamarin.Forms.Platform.UWP.Platform.CreateRenderer(VisualElement element)
at Xamarin.Forms.Platform.UWP.VisualElementExtensions.GetOrCreateRenderer(VisualElement self)
at Xamarin.Forms.Platform.UWP.Platform.<SetCurrent>d__51.MoveNext()
Ich habe versucht, alle Kombinationen des Namespace und erhalten den gleichen Fehler:/ – user8971976