Windows phone 7 空列表框消息wp7
我已经做了很多研究,并且一直在尝试不同的方式在我的列表框为空时显示消息 你在这篇文章里做了什么 幸运的是,我在viewmodel和textblock锁中添加了如下代码:Windows phone 7 空列表框消息wp7,windows-phone-7,listbox,message,Windows Phone 7,Listbox,Message,我已经做了很多研究,并且一直在尝试不同的方式在我的列表框为空时显示消息 你在这篇文章里做了什么 幸运的是,我在viewmodel和textblock锁中添加了如下代码: <TextBlock Text="{Binding EmptyMessage}" Visibility="{Binding Converter={StaticResource VisibilityConverter}, Path=allToDoItemsListBox.Count}" FontSize="{StaticR
<TextBlock Text="{Binding EmptyMessage}" Visibility="{Binding Converter={StaticResource VisibilityConverter}, Path=allToDoItemsListBox.Count}" FontSize="{StaticResource PhoneFontSizeExtraLarge}" IsHitTestVisible="False" />
}
我错过了什么,应该有用,但它没有。已将app.xanl中的转换器添加到as资源中我认为返回值不是“折叠”或“可见”。它不应该是System.Windows.Collapsed和System.Windows.Visible吗?请使用以下代码进行尝试:
public object Convert(object Value, Type TargetType, object Parameter, CultureInfo Culture)
{
if (value != null && (int)value > 0)
{
return Visibility.Collapsed;
}
return Visibility.Visible;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
为此,请检查您是否有以下使用声明
using System.Windows;
您需要将textBlock可见性绑定到如下属性:
public System.Windows.Visibilty EmptyMessageVisibility
{
get { return itemList.Count == 0 ? Visibility.Collapsed : Visibility.Visible; }
}
如果(int)值>0,列表框不应该是可见的吗?如果(int)值大于0,则列表框应该是可见的。如果(int)值大于0,则在本例中,它应该将可见性设置为折叠。因此,使用转换器在文本块上绑定的可见性没有用?我已经用您展示的示例进行了测试,但是当我将listbox设置为itemList所在的位置时,没有显示Count的属性。我在这里有点盲目。对于ListBox,它是ListBox.Items.Count。我认为我在尝试使用ObservableCollection时非常聪明,因为在这篇文章中,它不起作用。上帝啊,当我添加项目时,它们从来没有显示过。你不能将DataContext或绑定设置正确。如果您发布更多代码,这会有所帮助。请尝试调试并在两个返回行上设置断点。调试器去那里了吗?否则,将转换器声明为ressource似乎有问题。对此进行了测试,但调试器没有执行。我对转换器资源的声明位于My app.xaml中,如下所示:将转换器的定义(xmlns:Converter=“clr namespace:mechanics”)直接作为应用程序标记的属性向上移动。我认为你的不起作用,因为converter:的定义低于它的实际使用。我移动了converter的定义,这就成功了。非常感谢您的帮助。请将此设置为答案,这样可以帮助其他有相同问题的人。谢谢
public System.Windows.Visibilty EmptyMessageVisibility
{
get { return itemList.Count == 0 ? Visibility.Collapsed : Visibility.Visible; }
}