我正在开发silverlight 4应用程序。我有以下datagrid
<data:DataGrid x:Name="StudentDataGrid" AutoGenerateColumns="False" Height="200" HorizontalAlignment="Left" Margin="176,96,0,0" VerticalAlignment="Top" Width="200">
<data:DataGrid.Columns>
<data:DataGridTextColumn Header="First Name" Binding="{Binding FirstName}"></data:DataGridTextColumn>
<data:DataGridTextColumn Width="*" Header="Last Name" Binding="{Binding LastName}" ></data:DataGridTextColumn>
</data:DataGrid.Columns>
</data:DataGrid>
我将以下列表绑定到此datagrid
public List<Student> GetStudents()
{
List<Student> studentList = new List<Student>();
Student s1 = new Student();
s1.FirstName = "Anil";
s1.LastName = "Jadhav";
Student s2 = new Student();
s2.FirstName = "Shyam";
s2.LastName = "Jodh";
studentList.Add(s1);
studentList.Add(s2);
return studentList;
}
代码工作正常。 *宽度占据剩余空间。但是,如果为s1.FirstName分配了具有非常长字符串的值,则代码运行但数据网格不显示滚动条。 LastName列转到右侧,它将被隐藏。我不想增加datagrd的宽度。如何解决上述问题?为什么datagrid没有显示滚动条?能否请您提供我可以解决上述问题的任何代码或链接。
答案 0 :(得分:0)
此链接here描述了针对此问题的解决方案。我有点怀疑,因为它不适用于WPF(我没有Silverlight),所以有兴趣听听它是否有效。
否则我认为您必须动态设置最后一列的宽度,例如使用触发器。