在XAML DataGrid中显示C#-array

时间:2014-05-08 10:13:50

标签: silverlight xaml datagrid itemssource

它应该很简单,但我找不到答案。 我有任何datadrid

<DataGrid x:Name="myTabell2"
    HorizontalAlignment="Left"
    Margin="294,67,0,0"
    VerticalAlignment="Top"
    Height="218"
    Width="137"/>

和代码隐藏C#

myTabell2.ItemsSource = LoadStringData();

    private string[] LoadStringData()
    {
        return "One Two Three Four Five Six Seven Eight".Split();
    }

我在http://www.c-sharpcorner.com/uploadfile/mahesh/working-with-datagrid-in-silverlight/中找到了上面的例子 他们在那里写的结果是一个值为“一”“两个”的列表.......

在我的尝试中,我没有得到值,但是“值”的长度i.d. “3”(长度为1)“3”(长度为2)“5”(长度为3)

我的问题是:我的代码中可能出现什么问题? (顺便说一下,是的,我可以用类和List或任何其他列表来完成。但是我想了解我的代码中有什么不对。为什么不简单,如果它很简单?

1 个答案:

答案 0 :(得分:0)

您的代码无法正常工作的原因是:
1.你的xaml声明应该有:

xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"

2。您的DataGrid声明应如下所示:

<data:DataGrid></data:DataGrid>

这是至关重要的,因为您将使用两个不同的DataGrids,从我的角度来看,它们以不同的方式评估数组。这就是为什么您的代码会为您所使用的代码产生不同结果的原因 的更新
由于项目中未引用 System.Windows.Controls ,因此OP无法使用正确的程序集。