我正在使用C#和XAML开发Windows Store应用程序。我在下面的代码中名为greetingOutput的文本块中显示数据。
try
{
var response = navigationParameter.ToString();
var serializer = new DataContractJsonSerializer(typeof(QualityRecordsRootObject));
var stream = new MemoryStream(Encoding.UTF8.GetBytes(response));
QualityRecordsRootObject qualityRecordsRootObject = (QualityRecordsRootObject)serializer.ReadObject(stream);
greetingOutput.Text = String.Format("{0,60}{1,60}{2,60}{3,60}",
"Brand",
"Printer",
"Printer Location",
"Date Received");
greetingOutput.Text += "\n\n";
for (int i = 0; i < qualityRecordsRootObject.auditDTOList.Count(); i++)
{
greetingOutput.Text += String.Format("{0,60}{1,60}{2,60}{3,60}",
qualityRecordsRootObject.auditDTOList[i].brandName,
qualityRecordsRootObject.auditDTOList[i].printerName,
qualityRecordsRootObject.auditDTOList[i].printerLocationName,
qualityRecordsRootObject.auditDTOList[i].receivedDate);
greetingOutput.Text += "\n";
}
}
catch (Exception ex)
{
Debug.WriteLine("exception: " + ex.Message);
greetingOutput.Text += " No Records Found!";
}但是它看起来并不好;我想有一个看起来不错的表格数据视图。XAML中有什么变通方法吗?此外,我想添加每一行的功能,以便如果我单击一行,它会转到一个特定的链接。
发布于 2013-03-19 16:44:44
我使用列表框提供所需的视图,如下所示。
<ListBox Name="ResultListBox"
Height="500" Width="1000" Margin="0,20,0,0" HorizontalAlignment="Left" VerticalAlignment="Top"
Visibility="Visible" SelectionChanged="ResultListBoxSelectionChanged"
>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Width="250" Text="{Binding brandName}" />
<TextBlock Width="250" Text="{Binding printerName}" />
<TextBlock Width="250" Text="{Binding printerLocationName}" />
<TextBlock Width="250" Text="{Binding receivedDate}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>对于C#后面的代码,如下所示。
ResultListBox.ItemsSource = qualityRecordsRootObject.auditDTOList;我希望这能帮助到一些人。
发布于 2013-03-14 01:10:45
我会使用DataGrid。这是DataGrid的msdn:http://msdn.microsoft.com/en-ca/library/system.windows.forms.datagrid.aspx
https://stackoverflow.com/questions/15377169
复制相似问题