0
我是新手,在Windows Phone 8編程。我正在學習「綁定」。我嘗試綁定Slider的屬性「Value」,但是在運行應用程序時,我沒有看到任何更改。沒有約束價值Windows Phone 8滑塊的屬性
的XAML代碼是這樣的:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<StackPanel>
<Slider Minimum="1" Maximum="100" Value="{Binding Valor}" />
</StackPanel>
</Grid>
的ViewModelBase類是這樣的:
public class VMBase : INotifyPropertyChanged {
public event PropertyChangedEventHandler PropertyChanged;
public VMBase() {}
public void RaisePropertyChanged(string PropertyName) {
if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(PropertyName));
}
}
的ViewModel類是這樣的:
public class VMSlider : VMBase {
private int _valor;
public VMSlider() {
_valor = 43;
}
public int Valor {
get { return _valor; }
set {
_valor = value;
RaisePropertyChanged("Valor");
}
}
}
在代碼隱藏類的我的XAML y寫道:
this.DataContext = new ViewModel.VMSlider();
我需要說明原因。
謝謝。
在連接調試器的情況下運行時,Visual Studio的「輸出」窗口中是否存在綁定錯誤? – 2013-02-24 20:35:51
當你說「你沒有看到任何改變」時,你檢查的內容沒有改變?你是否從代碼中設定了Valor,並希望滑塊改變,反之亦然? – 2013-02-24 21:39:19
另外,根據你什麼時候新建VMSlider,你可能想在VMSlider的構造函數中使用public setter設置_valor,這樣屬性更改通知就會觸發(如果綁定已經在那個時候設置)。 – 2013-02-24 21:40:52