问题标签 [nested-controls]

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 回答
634 浏览

asp.net - 如何在 Asp.net 中以数据表达式语法访问父数据源?

我在 TemplateField 中有一个用于 GridView 的中继器。GridView 绑定到datasource1,repeater 绑定到datasource2。如何在转发器项模板的数据绑定语法 (<%# %>) 中从转发器的 ItemTemplate 访问 datasource1?

0 投票
1 回答
1273 浏览

asp.net - 如何:实现 n 级嵌套网格视图?

在实施 UX 方面,我并不是最出色的。我在互联网上四处寻找嵌套网格视图或嵌套中继器控件的实现。大多数演示使用 sql 数据源对象。现在我没有看到任何人使用 sqldatasource。在我的场景中,我将使用对象数据源或手动进行数据绑定。数据源是 wsHttpBinding 上的 WCF 服务。

如果有人可以为我提供一些解决此问题的提示/网络资源,我将不胜感激。

提前致谢!!

0 投票
1 回答
490 浏览

.net - Web 控件生命周期问题:一个页面、一个网格和一个对话框(包含一个动态控件,其类型取决于网格中的选定行)

我有一个带有 GridView 的网页。GridView 包含 Question 对象的列表。每个问题都有一个 QuestionType。当用户单击 Question 控件时,会出现一个 Ajax 模式弹出窗口,其中包含一个 Dialog 自定义 Web 控件。Dialog Web 控件旨在将子自定义 Web 控件与 OK 和 Cancel 按钮一起封装。在这种情况下,子控件是一个代表所选问题的问题自定义控件。在单击 GridView 中的一行之前,不知道 Question 控件的确切类型。

总结页面层次结构:

  • 包含问题的 GridView(在 .aspx 标记中声明,单击行时触发事件)
  • 链接到 AJAX 模式弹出扩展器的面板(在 .aspx 标记中声明)
  • 对话框控件(在 .aspx 标记中声明)
  • 问题控件(在 Dialog 控件中动态创建,在选择问题之前类型未知)
  • 确定按钮(在 Dialog 控件中动态创建)
  • 取消按钮(在 Dialog 控件中动态创建)

当用户单击对话框中的确定按钮时,我希望能够从包含页面获取对话框的内容。(在各种 Question 控件中有验证答案的代码,在 Dialog 中有一个将答案公开给包含页面的属性。)

我在让它发挥作用方面遇到了很多麻烦。

我已经在谷歌上搜索了几个小时,所有关于自定义 Web 控件的文章都指出您需要在 OnInit 覆盖中创建子控件。但是,在我的场景中,在 GridView 触发其行​​单击事件之前调用了 Dialog OnInit 方法,这意味着我无法创建 Question 控件,因为我不知道目标类型。

如果我将创建它的代码移动到对话框生命周期的稍后时间点,例如 RenderContents,我至少可以让它显示动态问题控件。但是,根据所有文章,这是不正确的并且无论如何都没用,因为当单击对话框中的确定按钮时控件仍然不可用(因为对话框被隐藏并且永远不会调用 RenderContents)。

所以,我在这里问 ASP.NET 的人应该如何做到这一点?我不是在寻找代码;只是策略。设置它的正确方法是什么?目标是一个对话框,其中包含一个动态创建的控件,其类型取决于 GirdView 中选定的行,并且可以在回发后由包含页面访问。

任何提示将非常感谢。

更新

我添加了日志记录,单击网格后触发的事件顺序如下:

  • 寻呼机
  • 对话器
  • 对话框 OnInit
  • 页面初始化
  • 页面 CreateChildControls
  • 对话框 CreateChildControls
  • 页面加载
  • 对话框加载
  • Page OnContactorComplianceQuestionSelected
  • 对话框渲染内容

我只知道在 Page OnContactorComplianceQuestionSelected 之后 Dialog 应该包含什么类型的控件。

0 投票
1 回答
8567 浏览

asp.net - 在 Detailsview 控件中获取文本框值

我有一个带有模板字段的 DetailsView 控件,如下所示:

详细信息视图包含在 UpdatePanel 中。

当用户单击btnUpdateButton我希望能够txtMessageTitle在代码后面检索文本框 () 值并使用按钮的 CommandArgument 时,更新数据库中的相应 MessageTitle。如何从按钮的 Command 事件中检索 DetailsView 控件中的文本框值?谢谢。

0 投票
2 回答
3273 浏览

c# - 如何在 MVVM 中为窗口中的嵌套控件处理 WPF 事件

最后说明 在另一篇文章中找到的最终解决方案

尽管我很欣赏所提供的澄清,但最终的解决方案实际上是由上面链接的另一个解决方案提供的。无论我尝试了什么,通过“元素名称”组件的绑定都不起作用。我必须基于数据网格上的“相对”层次结构......

希望在 WPF / MVVM 环境中不要太复杂。这是场景。

我有一个窗口 (.xaml) 和一个相应的视图模型 (.cs)。表单显示良好,所有数据绑定都没有问题。(注意:这不是通过任何商业“框架”完成的)

视图窗口中的控件之一是数据网格的自定义用户控件,其中包含所有预定义的列、标题和在显示视图时显示的内容。即使控件不是直接在主窗口 .xaml 文件中“定义”,而只是作为用户控件本身(它有自己明显的 .cs 代码隐藏)放在表单上,​​这也没有问题。

主窗口的“DataContext”指向视图模型,用户控件具有数据网格

现在,我在寻找什么。在这个数据网格上,我有一列在第一列中有一个图像。当我单击此图像时,我想打印此行表示的特定于记录的报告(它具有我使用的 PK 值)。那么,我如何告诉图像“KeyUp”事件转到 View Model 事件处理程序,因为这是数据所在的位置,以及我需要一些其他方法来准备对报告的调用。网格的视图部分用于向用户显示外观,因此在此控件中没有直接的“功能”。

-- 编辑 -- 每个答案的进展

我已经根据 Josh 和 Rachel 的评论调整了我的数据网格,但是,有些事情似乎仍然不太正确......看到按钮使用“命令”实例,我将其解释为它需要附加到我的视图模型上的“ICommand”接口对象。所以,我创建了一个实例。我知道命令处理程序可以工作,因为它也用于添加、编辑、保存、取消、退出等常见的事情......所以我有一个新的用于打印目的。为简单起见,我将它创建为始终执行,因此没有方法可以处理控件的“CanExecute”部分。我已经将按钮的“命令”设置为几乎所有我能想到的迭代,但这里是我所看到的更新。

在我的 ViewModel 类中(myICommandButtonHandler 继承自 ICommand)

现在,我所看到的。在逐步初始化所有控件等期间。我单击菜单项以调用要显示的窗口。首先,它创建一个 View Model 控制器的实例。然后,它调用 Window 并将 View Model 控制器作为参数传递,因此它立即在 Window 级别设置为窗口的“DataContext”。然后主窗口进入它的“InitializeComponents”调用并开始构建嵌入的所有其他控件,包括包含相关数据网格的这个单独的类。在此用户控件(具有数据网格)的构造函数中,尚未设置“数据上下文”,因为其余控件尚未初始化,我不知道为什么/何时“绑定”显然得到“迷上了”。所以,似乎尝试绑定到数据网格的命令按钮失败了。但是,在运行时,实际数据会在网格中更新,所以我知道有很多工作。

因此,数据网格将其“ItemsSource”设置为视图模型上“DataView”属性的属性,但“按钮”的绑定似乎没有看到我认为会得到的“MyPrintCommand”处理程序hit.. 它的作用是只显示一个消息框(现在)。

0 投票
1 回答
374 浏览

asp.net - LinkBut​​ton 中的嵌套控件不可点击

我正在开发一个复合自定义控件。

在所述控件中,我继承自 LinkBut​​ton。在这个 LinkBut​​ton 中,我嵌套了一个标签控件和 5 个图像控件。

我能够正确渲染所有内容,并且我已经让 btton 在点击事件和所有内容上执行它,但是,有一个小问题:

渲染按钮后,嵌套控件将出现在链接按钮上方,因此链接按钮在这些添加的控件所在的位置不可点击...

我想知道的是,有没有办法将它们放在链接按钮或其他东西后面?这样按钮仍然可以点击吗?

提前致谢!

0 投票
2 回答
115 浏览

ruby-on-rails - 如何让渲染与嵌套控制器一起使用?

这些是我的路线:

我有auctions#show一个投标表格的观点:

这当然POSTauctions/:auction_id/bids

我有这个bids#create动作:

在这个“如果出价没有保存逻辑”中,我有:

这应该(并且确实)尝试渲染,app/views/auctions/show.html.erb但我收到此错误:

显然这是一个问题!它正在寻找app/views/bids而不是寻找app/views/auctions部分。

我如何使上下文成为app/views/auctions那些部分?

0 投票
1 回答
4526 浏览

asp.net - 当链接按钮位于嵌套中继器内时查找隐藏字段值

我有上面嵌套中继器的 HTML。我可以通过以下方法找到包含酒店代码的隐藏字段值

但问题是现在我必须在单击嵌套中继器项目模板链接按钮时找到隐藏字段值。您可以检查 lnkBookNow 是rptRooms中继器内部的链接按钮。

我尝试了类似的方法,但没有找到隐藏字段。

0 投票
0 回答
161 浏览

c# - WinForms 在设计器中对负载进行了一些更改

这是我多年来注意到的,但以前从未被打扰过。在设计器视图中打开 WinForms 表单时,VS 会立即将某些表单设置为未保存状态。这只发生在一些层次结构稍微复杂的表单上。

麻烦的是,每当发生这种情况时,有关表单的某些内容已经发生了变化(主要是细微的变化)。通常嵌套控件与锚属性集的对齐方式。在这种特殊情况下,我有一个带有嵌套 GroupBox 的 SplitPanel 和一个嵌套的 PropertyGrid 控件。

因此,每次我运行打开表单并保存它时,这种烦人的变化都会出现在运行时,并且也可以在设计器中看到。其他人是否注意到类似的行为?如果是这样,有人找到原因和解决方法吗?

0 投票
1 回答
847 浏览

wpf - 嵌套控件的 WPF RelativeSource 问题

我有以下标记:

当 Button.IsEnabled 为 false 时,我想更改嵌套在 Button 内的图像。上面的标记不起作用。

我试图使用在这里找到的 Meleak 代码:WPF Mouseover Trigger Effect for Child Controls

有谁可以建议我解决这个问题?

先感谢您!