コード例 #1
0
    protected void ReloadData()
    {
        if (ShowAsButton)
        {
            // Setup as button
            btn.Text          = GetText();
            btn.OnClientClick = OnClientClick;
            btn.CssClass      = CssClass;

            hyperLink.Visible = false;
        }
        else
        {
            btn.Visible = false;

            // URL
            string url = LinkUrl;
            if (!String.IsNullOrEmpty(url))
            {
                url = URLHelper.ResolveUrl(url);
            }
            hyperLink.NavigateUrl = HTMLHelper.EncodeQuotes(url);
            hyperLink.CssClass    = HTMLHelper.EncodeQuotes(CssClass);
            hyperLink.Target      = HTMLHelper.EncodeQuotes(LinkTarget);

            string imageUrl   = ImageUrl;
            bool   isImageUrl = !string.IsNullOrEmpty(imageUrl);

            // Link text
            string text = GetText();
            text         = (!isImageUrl && string.IsNullOrEmpty(text)) ? url : text;
            lblText.Text = HTMLHelper.HTMLEncode(text);

            // Link javascript
            string javascript = OnClientClick;
            string ev         = LinkEvent;
            if (!String.IsNullOrEmpty(ev) || (Click != null))
            {
                javascript += this.Page.ClientScript.GetPostBackEventReference(this, null) + "; return false;";
            }
            if (!String.IsNullOrEmpty(javascript))
            {
                hyperLink.Attributes.Add("onclick", javascript);
            }

            // Image
            if (isImageUrl)
            {
                image.ImageUrl      = UIHelper.ResolveImageUrl(imageUrl);
                image.AlternateText = HTMLHelper.EncodeQuotes(ImageAltText);
                image.ToolTip       = HTMLHelper.EncodeQuotes(ImageAltText);
                image.CssClass      = HTMLHelper.EncodeQuotes(ImageCssClass);
            }
            else
            {
                image.Visible = false;
            }
        }
    }