private int[] g1 = new int[9];
public int[] G1
{
get { return g1; }
set { NotifyPropertyChanged("G1[]"); }
}
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(string propName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propName));
}
}
<TextBlock x:Name="R1G1" Text="{Binding G1[0]}" HorizontalAlignment="Left" Margin="0,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="80" Height="80"/>
G1在方法中用1到9的整数填充。
问题: 文本块的文本设置为0,无法更新。
答案 0 :(得分:1)
NotifyPropertyChanged("G1[]");
应该是
NotifyPropertyChanged("G1");
您确定数组包含值1到9吗?它没有在代码中显示。
TextBlocks不能用于输入文本。改为使用TextBox。
绑定可能需要Mode=TwoWay
最后(此问题不需要):数组不支持发送对数组的更改通知(添加,删除,移动元素)您可以使用ObservableCollection。
答案 1 :(得分:0)
哇...停!使用ObservableCollection<int>
而不是数组。 ObservableCollection实现了INotify。