在c#中,来自XML的UI不会出现正确的值

时间:2014-08-05 09:19:42

标签: c# xml wpf string properties

我有一个xml文件,我有一个这样的条目:

<Item name="ID" value="001" />
char []t_id = new char[25];

我在业务逻辑方面拥有财产:

 public char[] XID
    {
        get { return this.t_id; }
        set { this.t_id = value; }
    }

UI端的属性绑定到textBox:

public string YID
    {
        get
        {
            char[] value = this.Obj.XID;
            return new string(value);
        }
        set
        {
            this.Obj.XID = value.ToCharArray();
        }
    }

在XMl解析期间获取ID的默认值,如下所示:

case "ID":
this.XID = node.Value.ToCharArray();
break;

问题是当我启动我的应用程序时,我正在使用system.char []代替值001。 请告诉我在哪里犯了错误,为什么我没有得到正确的价值。

1 个答案:

答案 0 :(得分:0)

YID属性发生更改时,您似乎需要使用INotifyPropertyChanged Interface来更新XID属性。尝试这样的事情:

public char[] XID
{
    get { return this.t_id; }
    set { this.t_id = value; NotifyPropertyChanged("YID"); }
}

另外,如果您看到的是system.char[]而不是实际的string,那么我认为您正在显示XID属性而不是YID属性。尝试这样的事情:

<TextBlock Text="{Binding YID}" />