【问题标题】:DataGridView in Xamarin for mobile app (Android/iOS)Xamarin 中的 DataGridView 移动应用程序 (Android/iOS)
【发布时间】:2019-06-19 21:09:16
【问题描述】:

我需要创建一个应用程序,其中主要活动必须包含数字数据,例如 Windows 窗体中的 DataGridView。 我必须显示一些可以随时间变化的行,具体取决于某些计算(但它永远不会少于 8 行)和 5 列。 此表的每个单元格都将包含一个值。 使用 Windows 窗体时,我使用 DataGridView 来显示数据,并且如果需要,我可以使用以下命令以编程方式添加新行:

 myGridView.Rows.Add()

并读取 myGridView 中的信息:

 foreach (DataGridViewRow row in myGridView.Rows)
 {
    if (row.Cells[1].Value != null) 
    // do something
 }

在 Xamarin 中实现这一目标的最佳方法是什么?我看不到与 DataGridView 完全相同的等价物。谢谢您的帮助。

【问题讨论】:

    标签: c# xamarin xamarin.ios xamarin.android xamarin.forms


    【解决方案1】:

    不,很遗憾,Xamarin.Forms(Xamarin.IOS 或 Xamarin.Android)中没有这样的东西,主要原因是本机平台(iOS 和 Android)没有它作为本机控件。

    在 Xamarin.Forms 中有一个 Grid 控件,但它主要用于布局,不能像 DataGridView 那样进行数据绑定。

    好消息是您拥有自己制作所需的一切。将 Grid 子类化,添加一些绑定属性并为您想要支持的每个平台创建自定义渲染器,您可能需要做更多的事情,但至少这可能是一个好的开始。

    注意:我快速搜索了一个开源项目,this 看起来很有趣。看看它可能会完成您需要的工作。

    【讨论】:

      【解决方案2】:

      我最近为 Xamarin Forms 构建了自己的数据网格控件,因为我找不到满足我需求的控件。如果您仍在寻找数据网格控件,我已经在 Nuget 上发布了我的,它在 Github 上。它完全免费使用。如果对您有帮助,请告诉我!

      它被称为 NoFrillsDataGrid。

      Github:https://github.com/davepruitt/NoFrillsDataGrid

      Nuget:https://www.nuget.org/packages/NoFrills.Xamarin.Forms/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多