C# 在ASP.NET的ContentTemplate中未显示超链接控件 字符串url=“/Cart?AddItem={0}”,DataItemID; linkAddToCart=新建超链接(); linkAddToCart.CssClass=“commandbutton”; linkAddToCart.NavigateUrl=url; linkAddToCart.Text=“添加到购物车”;
锚定标记中的按钮显示在页面上。但是,超级链接按钮根本不会出现。 第二个代码块在Page_Load事件中运行(我将在它工作后将其放入一个方法中),并引用一个公共超链接字段C# 在ASP.NET的ContentTemplate中未显示超链接控件 字符串url=“/Cart?AddItem={0}”,DataItemID; linkAddToCart=新建超链接(); linkAddToCart.CssClass=“commandbutton”; linkAddToCart.NavigateUrl=url; linkAddToCart.Text=“添加到购物车”;,c#,asp.net,C#,Asp.net,锚定标记中的按钮显示在页面上。但是,超级链接按钮根本不会出现。 第二个代码块在Page_Load事件中运行(我将在它工作后将其放入一个方法中),并引用一个公共超链接字段 感谢您的帮助。通过演示文稿文件中的标记定义超链接控件 <ContentTemplate> <div class="detail_purchase_button"> <a class="commandbutton" href='/Courses?Restore
感谢您的帮助。通过演示文稿文件中的标记定义超链接控件
<ContentTemplate>
<div class="detail_purchase_button">
<a class="commandbutton" href='/Courses?RestoreFilters=1'>Return to Catalog</a>
<%# linkAddToCart %>
</div>
</ContentTemplate>
string url = "/Cart?AddItem={0}", DataItemID;
linkAddToCart = new HyperLink();
linkAddToCart.CssClass = "commandbutton";
linkAddToCart.NavigateUrl = url;
linkAddToCart.Text = "Add To Cart";
如果要动态定义控件,则需要将其添加到适当的容器中,例如面板或占位符
lnkAddToCart.CssClass = "commandbutton";
lnkAddToCart.NavigateUrl = url;
// etc.
但是,除非您绝对需要动态创建控件,否则最好在设计时将其添加到ASPX。如果不需要一直显示超链接控件,则始终可以将其设置为
Visible=“false”
(在代码中设置为标记,.Visible=false;
)。通过演示文件中的标记定义超链接控件
<ContentTemplate>
<div class="detail_purchase_button">
<a class="commandbutton" href='/Courses?RestoreFilters=1'>Return to Catalog</a>
<%# linkAddToCart %>
</div>
</ContentTemplate>
string url = "/Cart?AddItem={0}", DataItemID;
linkAddToCart = new HyperLink();
linkAddToCart.CssClass = "commandbutton";
linkAddToCart.NavigateUrl = url;
linkAddToCart.Text = "Add To Cart";
如果要动态定义控件,则需要将其添加到适当的容器中,例如面板或占位符
lnkAddToCart.CssClass = "commandbutton";
lnkAddToCart.NavigateUrl = url;
// etc.
但是,除非您绝对需要动态创建控件,否则最好在设计时将其添加到ASPX。如果不需要一直显示,您可以设置
Visible=“false”
(在代码中设置标记,.Visible=false;
)。您的问题似乎有点模糊,但我试图根据我对它的理解来回答。如果我误解了你的问题,请不要理会
无法添加这样的超链接。首先在contenttemplate中放置一个占位符(即面板),然后从代码隐藏中将超链接添加到占位符中
你的问题似乎有点模糊,但我试图根据我的理解来回答。如果我误解了你的问题,请不要理会 无法添加这样的超链接。首先在contenttemplate中放置一个占位符(即面板),然后从代码隐藏中将超链接添加到占位符中
尝试为动态创建的
linkAddToCart
控件设置ID。您的代码没有为其定义ID。话虽如此,我还是建议按照安东尼的建议去做。我认为没有必要做这种事。如果您想在某些情况下使用某些逻辑使其显示,只需在标记中使用Visible=“false”
定义它,并在需要时使其可见。尝试为动态创建的linkAddToCart
控件设置ID。您的代码没有为其定义ID。话虽如此,我还是建议按照安东尼的建议去做。我认为没有必要做这种事。如果您想在某些情况下使用某些逻辑使其显示,只需在标记中使用Visible=“false”
定义它,并在需要时使其可见。这里很难猜测。请编写小而简洁的代码,并在您身边进行测试,如果有任何问题,请发布在这里。这里很难猜测。请编写小而简洁的代码,并在您身边进行测试,如果有任何问题,请在这里发布。
// define the HyperLink as in your original code snippet
theContainer.Controls.Add(lnkAddToCart);
<a class="commandbutton" href='/Courses?RestoreFilters=1'>Return to Catalog</a>
<asp:Panel id="pnlLink" runat="server"></asp:Panel>
</div>
</ContentTemplate>
string url = "/Cart?AddItem={0}", DataItemID;
linkAddToCart = new HyperLink();
linkAddToCart.CssClass = "commandbutton";
linkAddToCart.NavigateUrl = url;
linkAddToCart.Text = "Add To Cart";
pnlLink.Controls.Add(linkAddToCart);