私はデータ バインディングをいじっています。次のようなユーザー コントロール (ビュー) を作成します。
<UserControl>
<Grid x:Name="LayoutRoot"
Background="{StaticResource PhoneChromeBrush}"
DataContext="{Binding Source={StaticResource ViewModelSampleDataSource}}"
>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBox Text="{Binding Model.Var1, Mode=TwoWay}" InputScope="Number" Grid.Row="0" FontSize="90"/>
<TextBlock Text="{Binding Model.Var2}" Grid.Row="1" FontSize="90" />
</Grid>
私はこのクラスモデルを持っています
public class ModelSample:INotifyPropertyChanged
{
public ModelSample()
{
}
private double var1;
public double Var1
{
get { return var1; }
set
{
var1 = value;
OnPropertyChanged("var");
}
}
private double var2;
public double Var2
{
get { return var2; }
set
{
var2 = value;
OnPropertyChanged("var2");
}
}
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(string name)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
handler(this, new PropertyChangedEventArgs(name));
}
}
これがビューモデルです
public class ViewModelSample
{
private static ModelSample model=new ModelSample();
public static ModelSample Model
{
get { return model; }
set { model = value; }
}
}
私の問題は次のとおりです: var1 の値を (テキストボックスを使用して) 変更すると、var2 の値を更新したいのですが、どうすればよいですか? ありがとう