c# - variable - La vista de diseño muestra `System.Object` en TextBlock al aplicar un convertidor a un número en Blend
mostrar un resultado en visual basic (0)
En Microsoft Blend para Visual Studio (Express 2013 y Community 2015 RC), he creado algunos datos de muestra con una colección de elementos que consta de un número y una cadena.
El amount
número está vinculado a un TextBlock
:
<TextBlock Text="{Binding amount}" />
Los números se muestran bien, excepto que quiero formatearlos en una cadena que muestra 2 decimales. Como StringFormat
no está disponible para Universal Apps , intenté agregar un convertidor que intenta lograr lo mismo:
public class StringFormatConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string language)
{
return string.Format(parameter as string, value);
}
public object ConvertBack(object value, Type targetType, object parameter, string language)
{
return null;
}
}
Agrego un recurso para ello:
<Page.Resources>
<ResourceDictionary>
<local:StringFormatConverter x:Name="StringFormat"/>
</ResourceDictionary>
</Page.Resources>
TextBlock
mi encuadernación de TextBlock
:
<TextBlock Text="{
Binding amount,
Converter={StaticResource StringFormat},
ConverterParameter=''{}{0:f2}''}" />
Pero cuando hago esto, el panel de vista muestra System.Object
para cada cantidad.
Incluso cuando agrego un convertidor que no hace nada y solo devuelve el valor o toString()
del valor, ¡obtengo el mismo resultado! Esto solo ocurre con el tipo de datos de muestra Number
.
¿Cómo puedo formatear el enlace a un número de un conjunto de datos de muestra en Blend?