向面板控件添加简单文本

19

我有一个C#中的面板:

    Panel aspPanel = new Panel();
    Button aspbutton = new Button();
    aspbutton.Text = "Download PDF";
    aspbutton.Click += initDownload;
    aspPanel.Controls.Add(aspbutton);`
我已经添加了属性、按钮和各种酷炫的动态效果。但我只想添加简单的文本,目前还没有成功。
我想知道如何在按钮后面添加文本。最终的HTML代码将呈现出类似于:
    <input type="button"/> Hello, this is a button, please click

能否有人指点我正确的方向?


只需在旁边添加一个标签控件并设置文本属性即可? - IrishChieftain
2
@Xander的回答是你想要的 - 它允许你添加文本而不需要任何包装标记。 - Tim Hobbs
谢谢大家。现在如果有人在谷歌上搜索这个,他们会找到“简单”、“文本”和“面板”“控件”。 - user416527
2个回答

37
在按钮之后添加文字,可以使用Literal控件:
Panel aspPanel = new Panel();
Button aspbutton = new Button();
aspbutton.Text = "Download PDF";
aspbutton.Click += initDownload;
aspPanel.Controls.Add(aspbutton);

aspPanel.Controls.Add(new LiteralControl("some more text!"));

np,我不会浪费太多时间在WebForms上。MVC和WebAPI是未来的潮流,特别是如果你要进入强硬的Web开发...... - Alex
同意,但只是足够理解并继续前进...这就是我正在做的 :) - user416527
当考虑到今天的开发工具缺乏多么严重时,开发本地应用程序并不是浪费时间;有时需要“本地化”以创建一个像海绵一样吸收努力工作,并具有最小延迟的新工具。 - Daniel Randall

4

试试这个

Label lbl = new Label();
lbl.Text = "Hello, this is a button, please click";
aspPanel.Controls.Add(lbl);

标签被包裹在<span/>标记中,因此它并不是技术上的解决方案。 - Tim Hobbs
1
当在浏览器中呈现时,它将实现相同的效果。 - codingbiz
我知道在大多数情况下,最终基本上会“看起来”相同,但有时可能不是预期的结果- 想想 CSS 规则,它可能并不完全符合问题的要求- 这就是我指出的问题- 更多是为了 OP 而不是其他任何事情。 - Tim Hobbs
我理解。甚至包括 JavaScript 和 JQuery 的具体细节。我实际上选择 Label,因为 Literal 很少使用。我已经不记得上次在互联网上看到它用于任何最近的示例了。只有在 .Net 2.0 时代。 - codingbiz
说实话,在提问之前我已经考虑过这个问题了。但我真的在寻找干净的HTML代码。不过还是谢谢你。 - user416527

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接