Windows Phone 7 Пустое сообщение с данными для списка? - PullRequest
3 голосов
/ 17 июня 2011

ОК, поэтому я пытаюсь получить действительно простое сообщение для отображения, когда коллекция пуста.Он работает только над элементом сводной страницы после того, как я во второй раз посещаю ... Очень хотел бы элегантное решение для этого.Такое ощущение, что я упускаю что-то действительно простое здесь.

внутри моей ViewModel ...

    private bool _IsDataLoaded;
    public bool IsDataLoaded
    {
        get
        {
            return _IsDataLoaded;
        }
        set
        {
            _IsDataLoaded = value;
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs("IsDataLoaded"));
            }
        }
    }

    public string EmptyMessage
    {
        get
        {
            if (IsDataLoaded)
            {
                return "No Tips for this Venue.";
            }
            else
            {
                return "";
            }
        }
    }

    ........

     void clientGetTips_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        ...

        this.IsDataLoaded = true;
    }

вот xaml ....

    <TextBlock Text="{Binding EmptyMessage}" Visibility="{Binding Converter={StaticResource CollectionLengthToVisibilityConverter1}, Path=VitalSigns.Count}" FontSize="{StaticResource PhoneFontSizeExtraLarge}" />

1 Ответ

3 голосов
/ 17 июня 2011

Вам также необходимо вызвать событие изменения для Пустого сообщения, например:

public bool IsDataLoaded
{
    get
    {
        return _IsDataLoaded;
    }
    set
    {
        _IsDataLoaded = value;
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs("IsDataLoaded"));
            PropertyChanged(this, new PropertyChangedEventArgs("EmptyMessage"));
        }
    }
}
...