将子类绑定到属性

时间:2010-03-31 00:29:21

标签: c# wpf binding

我有一个简单的问题。当然它有很多答案,但我无法选择正确的关键词谷歌。 我如何将子类绑定到我的wpf控件?

例如: 这是我的课。

    public class SiteFieldInfo<T>
    {
        public string Name { get; set; }
        public T Value { get; set; }
        public List<string> PositiveXPathExpressions { get; set; }
        public List<string> NegativeXPathExpressions { get; set; }
    }

    public class SiteInfo
    {
        public SiteFieldInfo<string> Author { get; set; }
        public SiteFieldInfo<DateTime> Date { get; set; }
        public SiteFieldInfo<string> Source { get; set; } 
    }

我想将SiteFieldInfo中的属性值绑定到TextBox控件的Text属性。

C#代码:

stackPanel1.DataContext = SiteInfoInstance;

xaml代码:

<StackPanel Name="stackPanel1">
<TextBlock Text="Author" />
<TextBox Text="{Binding Path=Author.Value}" />
</StackPanel>

它不起作用。什么是正确的语法或任何替代方案?


抱歉,这很好用。我只是傻了。如何关闭问题?

2 个答案:

答案 0 :(得分:1)

您绝对肯定您的SiteInfoInstance是否填充了数据?我没有看到您的类的结构方式或XAML的任何问题。

答案 1 :(得分:0)

在XAML中调用ToString()方法是否有效?我认为绑定会自动获取绑定源的字符串表示。