我正在为列表创建自定义表单模板,该表单模板使用许多控件,例如面板和下拉列表。我正在 controltemplates 文件夹中使用渲染模板并使其正常工作。我现在想将代码隐藏添加到控件模板中,但我似乎找不到如何正确执行此操作的示例。我正在使用 VSeWSS 1.3 和 VS 2008,并且我的解决方案已全部设置完毕。我只想知道如何为此模板设置代码隐藏页面。

有帮助吗?

解决方案

只需预先构建(并签名)您的代码,将其放入 bin_app_bin 中,并将类声明放入 <@Control 标记中。

<%@ 控制语言="C#" Inherits="YourNamespace.Class,YourAssembly.AssemblyName,Version=1.0.0.0,Culture=neutral,PublicKeyToken=YourPublicKeyToken" %>

其他提示

关于如何做到这一点的许多例子。

这是Google给我的第一个例子

http://jamestsai.net/blog/post/using-aspnet-web-user-control-with-with-code-behind-behind-in-sharepoint.aspx

由于我没有成功地使它正常工作,所以我试图理解我是否真的必须按照自己的方式做。事实证明,我能够构建一个自定义的WebPart,并将我的控件放入其中,然后将其他页面用于新的和编辑表单。不确定这是否真的会对其他任何人有所帮助,这只是我为完成工作所做的。

我也遇到与OP相同的问题。如果您还在听,我想从约翰·丹迪森(John Dandison)那里得到更多信息!

我在控制指令中添加了带有5个部分名称的继承属性。我的课堂背后的代码看起来像这样。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.UI;

namespace MyNamespace
{
    public class CustomRenderingTemplate : UserControl
    {
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
        }

        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
        }
    }
}

渲染模板加载正常。我在2个Overriden方法中添加了一个突破点,并且都没有被击中,所以我假设它没有连接好吗?你能帮我吗?我是否从正确的类中继承 - USERCONTROL?

http://www.andrewconnell.com/blog/articles/usingcodebehindfilesinsharepointsites.aspx

我不使用VSEWSS,但是过程是相同的。您需要在后面的代码中获取5部分名称,并将其在页面指令中的ASPX继承属性中进行线。

许可以下: CC-BY-SA归因
scroll top