Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 空列表框消息wp7_Windows Phone 7_Listbox_Message - Fatal编程技术网

Windows phone 7 空列表框消息wp7

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

我已经做了很多研究,并且一直在尝试不同的方式在我的列表框为空时显示消息

你在这篇文章里做了什么

幸运的是,我在viewmodel和textblock锁中添加了如下代码:

<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; }
}