này dường như là một vấn đề được biết đến với WPF DataGrid. Xem thảo luận here (bắt đầu từ bình luận thứ 4) Cũng có vẻ như nó đã được sửa trong .net 4. Tôi đã thực hiện một số kiểm tra cho vấn đề này trên các khung công tác 3.5 và 4 (beta2). Xin vui lòng, xem kết quả dưới đây:
Trước tiên tôi định nghĩa 3 loại bộ sưu tập item:
public class TestGridItems0 : ArrayList
{
}
public class TestGridItems1 : List<TestGridItem>
{
}
public class TestGridItems2<T> : List<TestGridItem>
{
}
nơi TestGridItem là dưới đây:
public class TestGridItem
{
public string One { get; set; }
public string Two { get; set; }
public string Three { get; set; }
}
.net 3,5
TestGridItems0 và TestGridItems1 không hiển thị một dòng trống cho một bộ sưu tập trống; nơi như TestGridItems2 đã làm việc tốt.
.net 4
chỉ TestGridItems0 không hiển thị dòng cho bộ sưu tập trống rỗng; khác 2 làm việc tốt.
XAML cho lưới điện:
<my:DataGrid Name="dataGrid" AutoGenerateColumns="False" CanUserAddRows="True">
<my:DataGrid.Columns>
<my:DataGridTextColumn Binding="{Binding One}" Header="One" />
<my:DataGridTextColumn Binding="{Binding Two}" Header="Two" />
<my:DataGridTextColumn Binding="{Binding Three}" Header="Three" />
</my:DataGrid.Columns>
</my:DataGrid>
dưới đây là cách nguồn mặt hàng được giao nhiệm vụ:
dataGrid.ItemsSource = new TestGridItems0();
dataGrid.ItemsSource = new TestGridItems1();
dataGrid.ItemsSource = new TestGridItems2<TestGridItem>();
hy vọng điều này giúp, coi
Nguồn
2010-01-16 19:27:15
cũng điều xảy ra là bạn không thể cuộn sang phải để xem các cột bị tắt màn hình, vì bạn không có thanh cuộn ngang mà không có mục nào. –