Response.Write在Markup的特定部分

时间:2013-01-14 10:42:10

标签: asp.net css visual-studio-2010 c#-4.0 response.write

我在ASP.NET,C#和MS SQL Server中有一个Web应用程序。我正在使用外部CSS Metro UI CSS ,它为我提供了样式化的组件,如Tiles(类似于Win8),通知,按钮等。我想显示从数据库中获取的内容或以 DIV 格式显示的计算数据。但由于它们不是ASP.NET控件,因此无法绑定到数据源。

我尝试使用Response.Write("MY HTML CODE")动态生成内容并且可以正常工作但不完美,因为内容与标记不同。我实际上不知道有什么区别,但它不适合我现有的静态页面内容。有没有办法使用Response.Write()将内容插入现有HTML?

现在我正在尝试这个,

Response.Write("<div class='message-dialog bg-color-blue fg-color-white' style='width: 50%; z-index:1000;'><h1>Congratulations!<br/></h1><h3>You Account is created.Please Sign In.</h3><a href='Default.aspx'><button class='button-set active bg-color-red fg-color-white' style='float:right'> OK </button></a></div>");

这会显示一个样式框,其中包含正确的文字,但显示在我现有页面的顶部_z-index_,而后面没有它。

1 个答案:

答案 0 :(得分:4)

任何控件,甚至特殊样式的div 都可以通过向其添加runat="server"属性在服务器端进行修改。

所以在你的aspx中,你可以这样做:

<div class='message-dialog bg-color-blue fg-color-white' style='width: 50%; z-index:1000;' runat="server" id="myDiv" />

在代码背后做任何你想做的事......例如:

myDiv.Controls.Add(new Label() { Text = "Hello World" });

甚至

 myDiv.InnerHtml = "<h1>Hello World</h1>";

在这种情况下使用Response.Write可能是错误的方法......