问题标签 [templatefield]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2765 浏览

gridview - 如何在gridview中使用超链接在aspx代码后面执行函数

当单击将变量传递给该函数时,如何在gridview中使用超链接来执行aspx代码中的函数,该函数是超链接所在行中单元格的某个值。

示例:HTML 代码:

背后的 ASP 代码:

0 投票
1 回答
1051 浏览

asp.net - 如何从父控件获取 Container.DataItem?

假设我创建了一个 ASP.net 转发器。进一步假设我在 ASP.net 中继器的 ItemTemplate 中放置了一个 ASP.net GridView。

假设它看起来像这样:

我想参考 GridView 的 TemplateField 内的 Repeater DataSource。我怎样才能做到这一点?

0 投票
1 回答
778 浏览

c# - DetailsView 中动态添加的 TemplateFields 不设置绑定属性

我需要使用 DetailsView 构建一个网页,它有一堆文本框和绑定到 ObjectContainerDataSource 的下拉列表。这是用于使用 InsertItemTemplate 的单向绑定。

我可以很容易地使用静态定义的字段来使文本框和下拉列表都工作,但是我的特殊情况需要在运行时添加字段,因为网页需要高度可配置。

对于文本框,这很容易通过 BoundField 类,但是当我尝试将 TemplateField 用于下拉列表时,这一切都变得非常糟糕。我尝试了许多不同的方法,包括编写自己的 TemplateField 类,以及直接使用 CompiledBindableTemplateBuilder 设置 InsertItemTemplate。但无论我做什么,基本问题是单击插入按钮后,TemplateFields 不会绑定到对象数据源。我相信这是因为 InsertItemTemplate 在回发时为空(请注意,当所有字段都在标记中声明时, InsertItemTemplate 不为空)。如果有人完全按照我想做的事情做,请回复,因为我现在对此束手无策。

我已经恢复到模板字段中的简单 TextBox 以进行概念验证,但它也不起作用。我已经粘贴了我在下面所做的事情。在这种情况下,我试图将 TextBox 输入绑定到一个名为“CustomerRef”的属性。我认为我的问题可能与我如何设置 Text 属性有关,但我无法找到任何其他方法在后面的代码中将 Text 属性设置为 Bind(...) 。

这就是我插入模板化字段的方式:

这就是我将字段添加到我的 DetailsView 字段列表的方式:

我在文本框中输入了一些文本并按下插入按钮......然后在我的事件处理程序中为插入事件我尝试获取这样的数据源:

此时在调试环境中,我注意到有问题的字段不再具有 InsertItemTemplate - 它为空,并且未设置 MyCustomerRef。

我尝试在 Page_Load() 中的各个地方添加字段 - 在每次回帖时和仅在第一次加载时;在 Page_Init() 以及详细信息视图的 Init() 事件中,但我的做法似乎从来没有什么不同。提前感谢您对此问题的任何帮助。

0 投票
1 回答
707 浏览

c# - 动态变化的 GridView 模板字段

我有一个下拉列表的 gridview 模板字段。

在编辑某些行时,我将显示比其他行更少的项目。

如何才能做到这一点?

0 投票
2 回答
3043 浏览

asp.net - GridView 在 PostBack 期间丢失列内容

我在回发之间遇到了GridView的行为问题。

真正的问题来自我在column[0]的标记中定义的带有子CheckBox控件的TemplateField。第一次和第二次搜索执行工作正常。但是,在第二次执行和之后导致回帖的任何事情之间的某个时刻,我丢失了 TemplateField 的内容。

它只是列的内容,而不是被删除的整个列本身。TemplateField 存在于源文件中,并在表格的位置 0 处显示一个格式化的列。

代码:

ASP.NET:

0 投票
2 回答
455 浏览

asp.net - 以编程方式从 Gridview TemplateField 中删除函数调用

这是我正在尝试做的事情:

我有一个gridview,由于屏幕空间问题,它会截断模板字段之一(标签控件)中的文本。

我想要做的是,将该gridview 导出到一个excel 文件,但我希望该字段在导出时不会被截断。

有没有办法做到这一点?基本上我正在尝试以编程方式删除函数调用。

这是 TemplateField 的代码:

0 投票
2 回答
7560 浏览

asp.net - ASP.NET GridView 中的 SortExpression 无法使用

我有一个 ASP.NET GridView。现在我将SortExpression属性添加到<TemplateField>标签中,以使特定列可排序。

现在,其中一列在标题中添加了一些标记内容。问题是,如果 a中有标签SortExpression则不起作用,您必须将其放在. 但是,如果我将其转储到属性中,所有 HTML 内容都无法正常工作。<HeaderTemplate><TemplateField>HeaderText<TemplateField>HeaderText

所以你可以看到,如果我将整个<HeaderTemplate>属性放在 aheadertext中,它就不起作用。

但我想同时拥有这两种功能。任何人都可以帮忙吗?

0 投票
1 回答
327 浏览

asp.net - ASP.net GridView:获取 LinkItem 的行

我想在 GridView 中向注册用户显示“删除”链接,因此我使用的是 templateField:

现在在我的 deleteEntry() 函数中,我如何知道单击“删除”链接所在的行的任何信息?如何获取例如rowindex?

0 投票
1 回答
628 浏览

sitecore - Sitecore:从页面编辑器中隐藏数据模板字段

我有 2 个数据模板字段“title”和“id”,分别用于 HTML 页面标题和 body 标记中的 id 属性。当使用Page Editor查看页面时,Sitecore 会尝试在这些项目上呈现编辑器控件,并且由于它们位于主表单标签之外,因此无法正确呈现控件。我不需要这些在Page Editor中是可编辑的。

  1. 处理此类字段的最佳方法/解决方案是什么?
  2. 从页面编辑器中隐藏这 2 个模板字段是一种解决方案吗?
  3. 如果是这样,您如何从页面编辑器中隐藏这些字段并使其在内容编辑器中仍然可用(这样我们仍然可以在内容编辑器中对其进行编辑)?
0 投票
1 回答
276 浏览

javascript - 如何使用 ImageButtons 在 GridView TemplateField 中保留图像超链接的样式/悬停功能

在 GridView 的每一行(使用 TemplateField)中,我想显示将用于控制该行中数据的图像按钮。然后,当用户第一次将鼠标悬停在 GridView 行上,然后当用户将鼠标悬停在特定按钮上时,我想更换按钮的图像。

我可以使用 CSS 和图像超链接轻松完成此悬停功能,但是在使用图像超链接时,我无法引发任何服务器端事件来处理编辑特定行。

过去,我使用 ImageButtons 而不是图像超链接。我将 CommandName 参数添加到 ImageButtons 中,然后在代码中处理 GridView RowCommand:

为了在悬停时更改 ImageButton 图像,我使用了 Javascript:

但是,在这种情况下,当用户第一次将鼠标悬停在 GridView 行本身上时,我还需要替换 ImageButton 图像。

总而言之,当用户将鼠标悬停在 GridView 行上时,该行上的 ImageButtons 都会将 image1 交换为 image2。然后,当用户将鼠标悬停在特定的 ImageButton 上时,其图像将从 image2 切换到 image 3。

提前感谢您对最佳方法的任何建议。

- - - - - - - - - - - - - - - - - - -编辑 - - - - - - -----------------------------------------

不确定这是否是最好的方法,但我找到了一个使用 jQuery 的潜在解决方案:

到目前为止,这运行良好,但我愿意接受更好地处理此问题的建议。

希望这会对其他人有所帮助。