您的位置:首页 > 其它

.net 页面框架的层次问题,嵌套问题

2005-05-10 18:09 309 查看
第一层:Form1:<form id="Form1" runat="server">
第二层:才是我们拖放的控件。
<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
一般来说就只有这两层了。
但是我们想要控件嵌套控件呢?
也就是在控件里面在加控件,最常见的就是DataGrid,它里面就可以嵌套其他的控件,
正确设置嵌套也不是很难:
首先它的上一层,必须定义,然后再上一层帮定的过程中,创建定义下一层,依次类推,
其实知道了层次问题对我们获取控件ID非常有用,

1。比如我要给页面所有TextBox添加一个属性:
foreach(Control cr in this.FindControl("Form1").Controls)
{
if(cr is TextBox)
{
((TextBox)cr).Attributes["onmouseover"]="javascript:this.style.backgroundColor='#fff7ce';";
((TextBox)cr).Attributes["onmouseout"] = "javascript:this.style.backgroundColor='#f0fff0';";
}
}
开始用foreach(Control cr in this.Controls)怎么都不行,因为它不直接属于this的控件集合。

2。DataGrid里面所有button添加一个属性:
LinkButton button = (LinkButton) e.Item.FindControl("LinkButton1");
button.Attributes.Add ("onclick","return confirm (\"确定要删除此项记录吗?\")");

3。DataGrid嵌套:
LoveCherry大哥已经作了详细说明,其实只要掌握这个规律作什么嵌套都不应该是难事,(没有考虑效率)
当然具体问题具体分析。
请各位兄弟给与斧正。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: