C# Silverlight数据网格单元正在消失

C# Silverlight数据网格单元正在消失,c#,.net,silverlight,datagrid,C#,.net,Silverlight,Datagrid,我在Silverlight应用程序中有一个DataGrid,其中包含数据。我们的应用程序上还有一个按钮,可以改变布局,使DataGrid改变宽度 问题是,当您处于“小”模式并四处滚动时,对于看不到的列,其DataGridCell元素的可见性=折叠。现在,当您四处滚动时,这很好,但是当DataGrid的大小增加以显示所有列时,它们保持折叠状态。但是,由于某些原因,您始终可以看到第一行中的所有单元格 这闻起来像DataGrid控件中的错误。有人知道解决这个问题的方法吗?我已经为DataGrid上的S

我在Silverlight应用程序中有一个DataGrid,其中包含数据。我们的应用程序上还有一个按钮,可以改变布局,使DataGrid改变宽度

问题是,当您处于“小”模式并四处滚动时,对于看不到的列,其DataGridCell元素的可见性=折叠。现在,当您四处滚动时,这很好,但是当DataGrid的大小增加以显示所有列时,它们保持折叠状态。但是,由于某些原因,您始终可以看到第一行中的所有单元格

这闻起来像DataGrid控件中的错误。有人知道解决这个问题的方法吗?我已经为DataGrid上的SizeChanged添加了一个处理程序,但我不太确定要调用什么来强制它显示那些折叠的单元格

编辑:经过一些测试,我发现它只在GridLinesVisibility=“Horizontal”时发生

XAML(单击可将数据网格的宽度从一半切换到完全):



更新:尽管有时在未设置
gridlinesvisibility
的情况下仍可能发生。我还没有弄清楚在什么情况下会发生这种情况。

在讨论了MS alias之后,我发现它实际上是DataGrid中的一个bug。我已经给他们发送了一个复制项目,所以希望它能在将来得到修复。同时,作为一种解决方法,您可以在DataGrid更改大小时隐藏并重新显示其中一列:

<data:DataGrid x:Name="testDataGrid" GridLinesVisibility="Horizontal" Width="150" SizeChanged="testDataGrid_SizeChanged" />

您可以尝试将XAML提交到您的DataGrid吗?只是为了确保我的测试没有出错。
<data:DataGrid x:Name="testDataGrid" GridLinesVisibility="Horizontal" Width="150" SizeChanged="testDataGrid_SizeChanged" />
private void testDataGrid_SizeChanged(object sender, SizeChangedEventArgs e)
{
    this.testDataGrid.Columns[0].Visibility = Visibility.Collapsed;
    this.testDataGrid.Columns[0].Visibility = Visibility.Visible;
}