在Windows 8 Metro应用程序(C#/XAML)中创建一个表格(DataGrid)

15

我想创建一个像这样的表格: enter image description here

我该如何使用ListView或GridView创建类似的表格?我找不到添加表头的正确方法。

4个回答

10

8
不想显得过于苛刻,但我要敦促您从实施细节中退后一步,更好地了解Windows 8 UI设计原则(之前称为Metro)。
熟悉“伟大的Metro风格应用的8个特点”(<9分钟视频),与现在商店上的应用程序进行互动,并投入额外时间查看Jensen Harris的完整Build演示文稿。 您不想“举起和转移”之前使用的典范,而是要拥抱平台的独特功能,比如它的触摸优化性质,重新思考导航并构建新型应用程序。
从实践角度来看,XAML ListView和GridView定制交互性示例 是一个开始尝试从上面发布的内容进化到Window 8设计的好地方。
最后,如果您正在寻找与上述内容更接近的内容-请记住,如果不足够密切地订阅设计原则,则可能无法通过认证-您可以在此主题中找到一些帮助。

3
谢谢Jim。这不是我的第一个地铁应用程序,我知道有关认证流程及其难度的情况。但是想一想...展示表格的最佳方式是什么?当然,上面的截图只是一个例子,它不会看起来像这样... - Ateik
好的,这就是最后一个链接希望能够引导到的内容,但看起来要按照您想要的方式进行样式设计还需要一些工作。如果只是标题,那可能还好,但在Metro应用程序中与下拉菜单和复选框交互将会显得“不协调”,正如您所知道的那样。另一种选择是查看第三方提供的工具,例如Telerik,以节省一些时间。 - Jim O'Neil
谢谢,但您能解释一下这张表格将如何导致认证流程失败吗?还有什么替代方案吗? - Ateik
"可能无法通过认证" ≠ "会失败" :) 这并不像如果有一个表格就会直接失败那么明显。诚然,认证指南(http://msdn.microsoft.com/en-us/library/windows/apps/jj128432.aspx)并不是特定于该级别,但你所关注的内容属于“Metro样式应用程序的可预测行为”。根据您在此应用程序的开发周期中所处的位置,考虑在Generation App(http://aka.ms/8in30)注册,这将为您提供与设计师进行免费咨询以获取反馈和可能的替代方案。 - Jim O'Neil
5
诚然,我现在才设计我的第一个商店应用程序......实际上,我已经观看了你上面列出的几个视频,这些是需要记住的好概念......但我开发的是商业应用程序,行项目数据是我的常态。在研究这个问题时,我看到许多人建议重新思考用户界面......我完全赞成。但是,还没有人提供任何能够显示数据的设计替代方案吗? - Anthony Griggs

2
我也试图拥有像这样的表格(DataGrid),但我无法做到。仅仅通过尝试,我使用了一个ListView并硬编码了Items,但我必须找出如何动态地实现它。我试图在这里包含XAML代码,但不被允许。所以这是我的帖子链接:link 以下是上述链接中的XAML代码:
<ListView Grid.Row="0" HorizontalAlignment="Center" Width="300" Margin="0,20,0,0 ">
            <ListViewItem>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Width="150">Apple</TextBlock>
                    <TextBlock>100</TextBlock>
                </StackPanel>
            </ListViewItem>
            <ListViewItem>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Width="150">Banana</TextBlock>
                    <TextBlock>2000</TextBlock>
                </StackPanel>
            </ListViewItem>
            <ListViewItem>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Width="150">Oranges</TextBlock>
                    <TextBlock>1500</TextBlock>
                </StackPanel>
            </ListViewItem>           
        </ListView>

认识到这是一个旧答案--为什么你不被允许包含XAML?您应该能够粘贴、选择并使用四个空格进行制表,以使其进入代码格式。它可能无法正确突出显示,但应该是“允许”的。 - ruffin

2

信息:网格应用程序已通过商店认证。请查看我的应用程序:iLOGrabber。 - Alexander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接