我正在處理C#/ WPF程序並創建了由兩個文本框(和一個網格)組成的用戶控件。列表框無法顯示其所有項目的內容
在我的主窗口中有一個列表框。它的項目源設置爲我提到的用戶控件的集合。當我填充它並調試程序時,它可以保存20個項目,並且所有項目都有我想要的文本。但在加載主窗口(並且列表框已填充)後,它會顯示所有項目,但其中只有九個文本框帶有文本。其他人的文本框沒有任何文字。
這可能是什麼原因?
更新:這裏是代碼。
用戶控制:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="40" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBox x:Name="NumberColumn" x:FieldModifier="public" Text="{Binding LineNumber}"
Grid.Column="0" HorizontalAlignment="Right" />
<TextBox x:Name="TextColumn" x:FieldModifier="public" Text="{Binding Text}"
Grid.Column="1" HorizontalAlignment="Left" />
</Grid>
列表框的填充:
string line;
Collection<CustomLine> lines = new Collection<CustomLine>();
StreamReader reader = new StreamReader(@"2008.sln");
while ((line = reader.ReadLine()) != null)
{
CustomLine myLine = new CustomLine(line, lines.Count + 1);
lines.Add(myLine);
}
this.leftListBox.ItemsSource = lines;
列表框的XAML:
<ListBox x:Name="leftListBox" Grid.Column="0" Margin="10"
MouseDown="leftListBox_MouseDown" SelectionChanged="leftListBox_SelectionChanged">
<ListBox.ItemTemplate>
<DataTemplate>
<UserControl>
<local:CustomLine />
</UserControl>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
如果有另一段代碼可能會使用,我也可以稍後添加它。
原因去除
UserControl
將最有可能成爲你的一些代碼。如果你分享它,答案_might_會變得更具體。 – Nuffin 2012-01-27 11:45:57我也想過這個。但我不確定我應該在這裏粘貼哪些代碼。我已更新原始帖子。 – Sentropie 2012-01-27 12:10:42