【问题标题】:Navigation grid inside of a FormViewFormView 内的导航网格
【发布时间】:2013-01-23 02:29:12
【问题描述】:

我们有一个用于驱动表单视图的元素列表。通常,结果集介于 5-15 条记录之间。现在在表单视图中,我们有典型的 first/prior/next/last 用于导航。问题是有时用户需要直接转到特定记录来编辑它。这里的记录是工作任务,有一些非常简短的描述。

提出的想法是在表单视图中放置一个网格视图,其中列出了该表单的所有记录,用户只需在该记录上选择视图或编辑,它将直接导航到该记录并将其放入适当的模式。我们也可以把它放在表单视图之外,这并不重要。

问题是,不管驱动力如何,我如何告诉 formview 去记录从外部网格之类的东西驱动的 X。

我知道 formview 有 DataKeyNames 字段,但有没有办法说“去记录谁的 PK 是 17”,因为它在 formview 的当前数据集中?

如果是这样,有人有任何示例 C# 代码吗?我知道我们可以只用一条记录填充现有的表单视图,但我们也希望保留正常的导航按钮,以防万一(有时有数百个工作任务的情况,在这种情况下我们' d 抑制网格视图 - 听起来不对,但业务案例还有更多内容)。

【问题讨论】:

    标签: c# gridview formview


    【解决方案1】:

    这个简短的解决方案是在 FormView ItemTemplate 中嵌入网格并为两者引用相同的数据源。

    要使行可编辑,您需要对网格上的 RowDataBound 进行简单的回调,您将在其中检索链接按钮(或您用来触发编辑的任何控件),然后将命令参数设置为 rowindex。之后,您需要为将检索命令参数(再次是行索引)的链接按钮(或触发器)设置回调,然后将 FormView PageIndex 设置为该值,然后将 FormView 的 ChangeMode 设置为 FormViewMode。编辑。

    回顾一下,对于只读视图,它是一个包含所有项目的网格,但是在处理编辑或插入时,您会得到传统的表单视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 1970-01-01
      • 1970-01-01
      • 2016-12-25
      • 2015-06-24
      • 1970-01-01
      相关资源
      最近更新 更多