我正在制作我的第一个Windows Phone 7应用程序,它几乎已经完成,除了列表框中的计算字段。
我有一个带有id,名称和整数的数据库。我正在使用MVVM模式。根据具有某些计算的函数,我希望您显示YES或NOT作为ListBox的第一个字段的值,第二列是简单的名称。如何显示第一个字段?
这是我此时的代码(对于列表框):
<ListBox x:Name="lstPills" Grid.Row="1" ItemsSource="{Binding AllItems}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Stretch" Width="440">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Border Height="36" Width="60" CornerRadius="5" Background="Grey">
<TextBlock Text="HERE GOES YES or NOT" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="28"/>
</Border>
<TextBlock
Text="{Binding Name}"
FontSize="{StaticResource PhoneFontSizeLarge}"
Grid.Column="1"
VerticalAlignment="Center"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我有一个带有计算功能的类(只是一个例子):
public static bool isRight(int value)
{
return (Math.Abs(value) % 2 == 0 ? true : false);
}
是否有某种方法可以使用XAML中的bound参数调用此函数,以便反映结果?类似的东西:
<TextBlock Text="isRight(Binding myvalue)"/>
我还有我的模型和我的ViewModel。
答案 0 :(得分:1)
尝试绑定此isRight属性
private int _lookupValue;
public bool isRight
{
get {
return (Math.Abs(_lookupValue) % 2 == 0 ? true : false);
}
}
如果您认为这仍然不适用,那么您可以使用Converters。