Silverlight 将数组元素绑定到文本块


    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,并且无法更新它们。

NotifyPropertyChanged("G1[]");

应该是

NotifyPropertyChanged("G1");

您确定数组包含值 1 到 9 吗?它不会显示在代码中。

文本

块不能用于输入文本。请改用文本框。

绑定可能需要Mode=TwoWay

最后(此问题不需要(:数组不支持向数组发送更改通知(添加、删除、移动元素( 你可以为此使用 ObservableCollection。

> 哇...停!使用ObservableCollection<int>而不是数组。ObservableCollection 实现了 INotify。

最新更新