是否可以将对象作为参数传递给Web用户控件标记?

时间:2019-06-18 09:11:42

标签: webforms aspx-user-control

我正在使用aspx webform构建一个列出产品的网页。为此,在与我的列表相对应的用户控件中,我遍历了我的产品,并按产品注入了一个新的用户控件:

        foreach (Product p in this.Products)
        {
            ucProductItem.product = p;
    %>
    <uc:ucProductItem runat="server" ID="ucProductItem" />
    <%
        }
    %>

这工作正常,我对此表示满意...但并非完全如此,因为我觉得这很丑陋和混乱。我不喜欢在模板中混合使用标记和代码,并且我尝试尽可能多地使用标记(而且我在整个项目中都遇到了这个问题)。

因此,我想通过标记将产品p传递给新的ucProductItem用户控件,我自然尝试了类似的事情:

<uc:ucProductItem runat="server" ID="ucProductItem" product=p />

我知道这对于诸如字符串和整数之类的原始类型是可行的,但是我不知道该如何使用对象。

有可能吗?又如何?

0 个答案:

没有答案