0

我有一个带有背景图像的 div,当页面加载时,它的 url 没有被绑定。URL 在后面代码中的 get 方法中设置。不知道我在这里做错了什么。

的HTML:

<div class="decorator" style="background: transparent url(<%# HeadlineBackgroundImagePath %>) top center no-repeat; height: <%# HeadlineBackgroundImageHeight %>px;">

后面的代码:

    protected string HeadlineBackgroundImagePath
    {
        get
        {
            return ($CompanyContext.Entity as IPPCUpdateEntity).HeadlineBackground.ShortSrc;
        }
    }

    protected int? HeadlineBackgroundImageHeight
    {
        get
        {
            return ($CompanyContext.Entity as IPPCUpdateEntity).HeadlineBackground.Height;
        }
    }

当页面加载时,我得到这样的东西(注意 URL 中没有任何内容):

<div class="decorator" style="background: transparent url() top center no-repeat; height: px;">

我已经进入调试器,在属性上设置了一个断点,但该站点甚至没有调用该属性。

4

2 回答 2

1

这是您使用 get-set 的方式:

private string _headlineimg ="N/A";
public property HeadlineBackgroundImagePath() As string{
    get{
        return _headlineimg
   }
    set{
        _headlineimg = value
    }
}

然后在页面加载事件:

HeadlineBackgroundImagePath = "whatever";
于 2013-06-24T17:01:11.547 回答
0

Ani 的回答让我走上了正确的道路,但这只是解决方案的一部分。我按照建议设置了属性,但是我需要在后面的代码中设置图像路径后添加一行代码。在页面加载事件中,我设置了属性,然后调用 Page.DataBind() 使其工作。

    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            HeadlineBackgroundImagePath = ($CompanyContext.Entity as IPPCUpdateEntity).HeadlineBackground.ShortSrc;
            Page.DataBind();
            if (!String.IsNullOrEmpty(($CompanyContext.Entity as IPPCUpdateEntity).FloodlightTag))
                floodlightTag.Text = ($CompanyContext.Entity as IPPCUpdateEntity).FloodlightTag;
        }
        catch
        {
        }
    }
于 2013-06-24T18:45:18.833 回答