WPF:如何将数字属性绑定到DataGridTextColumn?

我认为WPF应该是一件简单的事情,但我不能让它工作...... 我的类上有一个int属性(Divisions),我想将它绑定到DataGrid列。
<DataGrid AutoGenerateColumns="False">
    <DataGrid.Columns>
            <DataGridTextColumn Header="Number of Divisions" Binding="{Binding Path=Divisions, StringFormat={}{0:N0}}" IsReadOnly="True"/>                
    </DataGrid.Columns>
</DataGrid>
但是,它没有显示出来。 我也尝试过这段代码,它也不适用于我:
<DataGrid AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Divisions" IsReadOnly="True">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Path=Divisions, StringFormat=C}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>
为了测试purpse,如果我向此类添加一个字符串属性以返回Divisions的字符串值,它就可以正常工作。那么,这里有什么问题?     
已邀请:
有趣......我能够使用以下(在VS 2010,.NET 4中)示例轻松地工作。 我的网格定义:
<DataGrid ItemsSource="{Binding}" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Number of Divisions" 
                            Binding="{Binding Path=Divisions,  StringFormat={}{0:N0}}" 
                            IsReadOnly="True"/>
    </DataGrid.Columns>
</DataGrid>
设置数据上下文:
this.DataContext = new List<MyItem>() { 
    new MyItem() { Divisions = 1 },
    new MyItem() { Divisions = 2 },
    new MyItem() { Divisions = 3 },
    new MyItem() { Divisions = 4 },
    new MyItem() { Divisions = 5 }
};
我的数据类定义:
public class MyItem {
    public int Divisions { get; set; } 
}
希望这可以帮助!     
我不相信你正确地指定了你的StringFormats。 在第一个示例中,尝试删除转义字符,如下所示:
StringFormat={}{0:N0}
在第二:
StringFormat={}{0:C}
    

要回复问题请先登录注册