首先:綁定ListView控件到ArrayList的項目的一個ObservableCollection沒有命名的屬性
<ListView Height="259" HorizontalAlignment="Left" Margin="7,6,0,0" Name="dataListView" VerticalAlignment="Top" Width="899">
<ListView.View>
<GridView>
<GridViewColumn Width="240" Header="Test" />
<GridViewColumn Width="50" Header="Result" />
<GridViewColumn Header="Column 3" />
</GridView>
</ListView.View>
</ListView>
是我的XAML文件中的定義。
然後在測試開始時,我跑:
dataListView.ItemsSource = tr.TestResultCollection;
在TestRunner.cs,我創建的ArrayList的觀察集合如此:
ObservableCollection<ArrayList> _testResultCollection = new ObservableCollection<ArrayList>();
,並公開稱他們爲這樣的:
public ObservableCollection<ArrayList> TestResultCollection
{ get { return _testResultCollection; } }
最後當我添加到集合中時,我使用:
_testResultCollection.Add(SummaryVerificationTestCase1(dbs, dbd));
它將一個ArrayList添加到集合中。 (是的,的ArrayList集合,我知道...)
然而,中顯示的內容每列(集合),(收集,(集合)。
我知道爲什麼了。不過,我... M並不完全肯定什麼最巧妙的方法解決辦法是通常在每個GridViewColumn你給像結合:
DisplayMemberBinding =「{結合的TestResult}」
但ArrayList中沒有名爲組件,只是指數(0-2),
有沒有辦法將每列綁定到單個索引?還是我錯過了一些簡單的東西?
'ArrayList'是在.NET Framework中最無用的名單。請使用數組或列表'。你的理智會感謝你。 –
這主要是因爲我使用他人的遺留代碼結構。我正在考慮重組;)但是,謝謝。 –
並且在評論之後,我花了一個小時完成了所有工作。好多了:) –