20

我需要在页面上使用用户控件 (.ascx),它是基于 2 个参数的相关帖子用户控件:

 1. Current post
 2. Relation type

页面需要此控件的 3 个不同实例,每个实例具有相同的 Current post 参数,但不同的关系类型(标题、作者、流派)。

第一个参数我可以通过url获取,但是第二个参数呢?

我已经在谷歌上搜索了一段时间,但我还没有找到答案。如何传递第二个参数,以便控件可以根据这些参数加载信息?我宁愿不为每个参数创建一个控件,否则最好不构建用户控件而是直接进入代码:(谢谢!

4

1 回答 1

37

创建用户控件的公共属性,例如:

public partial class SampleUC : UserControl
{
    public string CurrentPost {get;set;}
    public string RelationType {get;set;}

    //...

    //...
}

从使用它的页面中分配这些标记,例如:

<%@ Register TagPrefix="cc" TagName="SampleUC" Src="SampleUC.ascx" %>
...
...
<cc:SampleUC id="myUC" runat="server" CurrentPost="Sample Post Title" RelationType="Title" />

或从代码隐藏(使用它的页面):

protected void Page_Load(object sender, EventArgs e)
{
    //...

    myUC.CurrentPost = "Sample Post Title";
    myUC.RelationType = "Title" ;

    //...
}
于 2013-04-25T03:09:43.553 回答