[英]Windows Phone 7.1 Two Way Binding doesn't seem to work
首先,我很難問這個問題,但希望您能幫助我。 我有一個帶有進度條的Windows Phone 7.1一個應用程序。 我想綁定進度欄的TwoWay模式,但是我嘗試了很多,卻找不到任何解決方案。
ViewModel:
public class CollectionViewModel : INotifyPropertyChanged
{
private bool _isLoading;
public bool IsLoading
{
get { return _isLoading; }
set
{
if (_isLoading != value)
{
_isLoading = value;
NotifyPropertyChanged("IsLoading");
}
}
}
}
在我的PivotPage中,我將collectionViewModel的實例綁定到我的PivotItem上,如下所示:
public partial class Main_PivotPage : PhoneApplicationPage
{
CollectionViewModel _collectionViewModel;
public Main_PivotPage()
{
InitializeComponent();
_collectionViewModel = new CollectionViewModel();
collectionPivotItem.DataContext = _collectionViewModel;
}
}
在此數據透視頁中,我具有綁定到IsLoading屬性的ProgressBar。
XAML
<ProgressBar IsIndeterminate="{Binding IsLoading, Mode=TwoWay}"/>
當我將該屬性的值更改為true時,將不會發生任何事情。 進度欄將不會開始加載。
好吧,我沒有提到我將進度條嵌套在列表頁腳中。 那就是問題所在。 但是奇怪的是,綁定的數據上下文對我的longlistselector有效,但不適用於其中的listfooter。 我必須將datacontext單獨綁定到progressBar,如下所示:
collectionPivotItem.DataContext = _collectionViewModel;
progressBar.DataContext = _collectionViewModel;
這解決了我的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.