问题标签 [viewusercontrol]
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.
asp.net-mvc - 你可以在局部视图中使用 MVC 2 强类型助手吗?
我正在尝试使用新的强类型助手。我在我的控件中继承了模型: Inherits="System.Web.Mvc.ViewUserControl"
但是如果我强制输入代码,智能感知并没有公开模型并且页面对此不满意。如果我在标准视图中执行,一切都很好。这是我期望能够做到的:
这些助手可以以这种方式在局部视图中使用吗?
劳埃德
c# - 用户控件 MVC 和 C# 的当前上下文中存在名称“html”或名称“模型”
我正在使用 Microsoft MVC 和 C#。我创建了一个用户控件(example.ascx),并在顶部继承System.Web.MVC.ViewUserControl<PostTransferViewModel>
现在,当我的模型名称附加到 ViewUserControl 时,我得到“当前上下文中不存在名称‘模型’”和“当前上下文中不存在名称‘Html’。如果我<PostTransferViewModel>
从末尾删除ViewUserControl 然后一切正常,但我需要<PostTransferViewModel>
.
asp.net-mvc - 使用 Html.RenderPartial 渲染派生的局部视图
Html.RenderPartial("~/Views/Payments/MyControl.ascx");
如果 MyControl.ascx 是直接继承的控件,则从视图调用有效System.Web.Mvc.ViewUserControl
。
但是,如果控件继承了派生自 的新类System.Web.Mvc.ViewUserControl
,则调用 Html.RenderPartial("~/Views/Payments/MyDerivedControl.ascx");
失败,报告不存在这样的视图。
导出示例System.Web.Mvc.ViewUserControl
:
有解决方法吗,还是有另一种方法我应该这样做?也许是一个 HTML 助手?
c# - 如何在 ASP.NET MVC 中将数据从视图传递到 UserControl?
假设我想做最简单的数据传递,如下所示:
我想要做的是将变量 i 作为参数传递给 UserControl,以便它在一个带边框的 div 中显示数字。
这怎么可能?
谢谢
validation - 带有前缀的控件的 Asp.Net MVC2 客户端验证问题
问题是:当我在一个页面上放置 2 个相同类型的控件时,我需要为绑定指定不同的前缀。在这种情况下,表单后生成的验证规则不正确。那么如何让客户验证这个案例呢?:
该页面包含:
控件 ViewUserControl<PhoneViewModel>:
Model.GetPrefixed("CountryCode")
根据前缀返回“FaxPhone.CountryCode”或“PhonePhone.CountryCode ”
这是表单之后生成的验证规则。它们为字段名称“Phone.CountryCode”重复。虽然所需的结果是每个字段名称“FaxPhone.CountryCode”、“PhonePhone.CountryCode” 替代文本 http://www.freeimagehosting.net/uploads/37fbe720bf.png的 2 个规则(必需,数字)
这个问题与Asp.Net MVC2 Clientside Validation 和重复 ID 的问题有些重复, 但手动生成 id 的建议没有帮助。
asp.net-mvc - 如何在 ASP.Net MVC 2 的 ViewUserControl 中封装表单/发布/验证 [/redirect]
简短版本:需要 ViewUserControl(即登录表单)发布到自己并能够重定向(即,成功登录时),或返回带有验证摘要的原始视图(即主页/索引),并且不干扰其他 ViewUserControls页。
此外,HomeController/Index 应该对登录表单的内部工作有最少的了解。理想情况下,只需要 Html.RenderAction("Login","User") 或类似的东西。
目前,停留在重定向给出“不允许子动作执行重定向动作”。我知道为什么,但想知道是否有办法,或者我应该这样做的另一种方式。
我要达到的目标的详细信息:
- 封装要跨站点重用的登录(或任何)表单
- 发给自己
- 当登录/验证失败时,显示带有验证摘要的原始页面
- (有些人可能会争辩说只是发布到登录页面并在那里显示验证摘要;如果我想要实现的目标是不可能的,我会走那条路)
- 当登录成功时,重定向到 /App/Home/Index
- 另外,想要:
- 坚持 PRG 原则
- 避免使用ajax
- 尽可能封装登录表单(UserController.Login());避免必须实现 HomeController.Login() 因为登录表单可能出现在其他地方
除了重定向之外的所有工作。到目前为止,我的方法是:
Home/Index
包括登录表格:<%Html.RenderAction("Login","User");%>
User/Login ViewUserControl<UserLoginViewModel>
包括:
using(Html.BeginForm()){}
- 包括隐藏的表单域
"userlogin"="1"
在以下情况下效果很好:ModelState 或 User Credentials 失败 - return View() 确实屈服于 Home/Index 并显示适当的验证摘要。
(我在同一页面上有一个注册表格,使用相同的结构。每个表格的验证摘要仅在提交该表格时显示。)
在以下情况下失败:ModelState 和用户凭据有效 - RedirectToAction<>() 给出以下错误:
“不允许子操作执行重定向操作。”
似乎在经典的 ASP 时代,这可以通过Response.Buffer=True
. 现在有等效的设置或解决方法吗?
顺便说一句,正在运行:ASP.Net 4、MVC 2、VS 2010、开发/调试 Web 服务器
我希望所有这些都是有道理的。
那么,我有哪些选择?或者我的方法哪里出错了?蒂亚!
c# - 如何在 MVC 3 中向用户视图控件添加逻辑?
User View Control
没有代码隐藏。那么,我应该在哪里/如何制作events
元素?
我想了解 MVC 中控件的逻辑...
asp.net-mvc - T4MVC 不支持 DisplayTemplates 和 EditorTemplates
当我在视图中使用以下内容时,我注意到了这一点:
上面的行只返回视图的名称,所以在这种情况下ClientOnDocuments
. 然后默认视图引擎启动并尝试ClientOnDocuments.ascx
在当前视图的文件夹和 Shared 文件夹中查找,但不在DisplayTemplates
andEditorTemplates
文件夹中查找。
由于我在使用 T4MVC 方面已经走了很长一段路,我不想转储它或混合不同样式的引用视图(例如,如果我们提供模板的路径,上面的方法就可以工作)。
原因在于 T4MVC 生成的这段代码:
您可以看到共享根目录中包含的视图一切都很好,但显然它不能很好地处理子文件夹。
我知道我可以更改 T4MVC 模板文件,但实际上希望David Ebbo就他是否要更改/纠正这个问题做出回应。
希望他遵循 SO,至少我在 12 月在这里见过他。
asp.net-mvc-3 - 无法声明强类型 MVC3 视图用户控件
我想尝试按照这个线程在 MVC3 中创建一个强类型的视图用户控件。在强类型 MVC 视图用户控件中使用值类型,以便我可以使其可重用,但是,每当我尝试将现有视图用户控件 (ViewUserControl) 修改为强类型用户控件 (ViewUserControl 它抛出和错误:无法解析符号ViewUserControl. 你们有什么建议吗?
我的代码如下:
asp.net-mvc - 用户控件中的 MVC 代码给出错误:
我试图通过创建用户控件 ProductBox 并在其中设置要从模型中显示的参数来显示从数据库中获取的产品。但是下面的代码块显示了未处理的异常:strUrl 在当前上下文中不存在。
我对 MVC 完全陌生。你能帮我找出括号丢失的地方吗?这是我来自 ProductBox 用户控件的代码。
请帮我解决这个问题。谢谢。