我的MainPage中有一個Textblock項,它綁定了一個myClass對象的值。我也有一個改變這個對象的屬性值的按鈕。雖然在點擊按鈕並實現接口時更新值,但所表示的值不會改變。這裏是我的代碼:Windows Phone:數據綁定不會更新接口中的值
public class myClass : INotifyPropertyChanged
{
//Fields declaration <---------------------------------------------------->
private int lifetime;
private DateTime startingDate;
private string brand;
private double power;
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
public int Lifetime {
get
{
return lifetime;
}
set
{
if (value != lifetime)
{
lifetime = value;
NotifyPropertyChanged("Lifetime");
}
}
}
public DateTime StartingDate {
get
{
return startingDate;
}
set
{
if (value != startingDate)
{
startingDate = value;
NotifyPropertyChanged("StartingDate");
}
}
}
public string Brand
{
get
{
return brand;
}
set
{
if (value != brand)
{
brand = value;
NotifyPropertyChanged("Brand");
}
}
}
public double Power
{
get
{
return power;
}
set
{
if (value != power)
{
power = value;
NotifyPropertyChanged("Power");
}
}
}
public int DaysRemaining
{
get
{
return Lifetime - (DateTime.Now - StartingDate).Days;
}
}
//Functions declaration <------------------------------------------------>
public ContactLens()
{
StartingDate = new DateTime();
}
}
和改變startingDate
價值,並因此應改變DaysRemaining
值太大按鈕功能。
private void leftButtonChange_Click(object sender, RoutedEventArgs e)
{
Model.Left.StartingDate = DateTime.Now;
}
private void rightChangeButton_Click(object sender, RoutedEventArgs e)
{
Model.Right.StartingDate = DateTime.Now;
}
編輯: 我創建了更新日期和計算再次DaysRemaining
但仍然是一個方法,但綁定到StartingDate
變化的文本塊看重DaysRemaining
值要求的應用程序的重新啓動進行更改:
private void leftButtonChange_Click(object sender,RoutedEventArgs e) { Model.Left.Replace();
}
private void rightChangeButton_Click(object sender, RoutedEventArgs e)
{
Model.Right.Replace();
}
和主類功能:
public void Replace()
{
MessageBox.Show("" + daysRemaining);
StartingDate = DateTime.Now;
UpdateDaysRemaining();
MessageBox.Show("" + daysRemaining);
}
什麼叫Lifetime改變? – 2014-09-26 17:41:04
你需要綁定到一個屬性。 – 2014-09-26 19:16:34