Ich habe eine benutzerdefinierte Viewcell erstellt, wo ich Text an ein Label binden und dann in ein Raster einfügen. Wie aber vermeide ich leere Zeilen, wenn der Text, den ich an die Viewcell übergebe, leer ist? Dies ist nur ein Teil des Codes, aber gibt es irgendeine Art von Bindung, die ich vermisse, wenn der Text leer ist?Xamarin Forms Benutzerdefinierte ViewCell, nicht zum Gitter hinzufügen, wenn leer?
public RouteElementsCustomCell()
{
Label NameLbl = new Label()
{
TextColor = Color.Black,
HorizontalTextAlignment = TextAlignment.Center,
FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label))
};
NameLbl.SetBinding(Label.TextProperty, "StopName");
Grid grid = new Grid()
{
Padding = 10,
RowDefinitions =
{
new RowDefinition
{
Height = GridLength.Auto
},
}
};
grid.Children.Add(NameLbl,0,1,0,1);
}
Dies führt möglicherweise zu unnötiger Komplexität in Ihrem Viewmodel. Erwägen Sie die Verwendung eines XAML-Wertkonverters, der die Zeichenfolge in Boolean umwandelt. Sie würden dann nur IsVisible binden = "{Binding StopName, Converter = {}}" Es ist sehr nützlich und würde Ihnen erlauben, viele Dinge zu tun, einschließlich der Sichtbarkeit der Kontrolle basierend auf String nicht null oder leer . –
irreal