在葉面中動態的添加控件

在實際的開發過程中,經常需要根据實際需要動態的加載一些服務器控件或用戶控件,一般又分為靜態和動態加載兩種.下面主要是講如何動態加載控件,在葉面中動態加載控件經常用PlaceHolder控件作為一個容器來裝載這些動態加載的控件.這個例子是當點”BtnAddControl”來添加一個新控件
Sub BtnAddControl_Click(Sender As object,e As eventargs)
      Dim txtBox As textbox = New Textbox         
      '先清除placeholder中的所有控制項再將生成的textbox控件加到placeholder控件中
      PlaceHolder1.Controls.Clear()
      PlaceHolder1.Controls.Add(txtBox) '這樣基本上就已經有了一個textbox控件了,當點“BtnAddControl“時就可以看到有個textbox!
      '還可以定義加載的TEXTBOX的各种屬性(注意要先添加控件,再設置它的屬性)
      txtBox.ID=“Mytextbox“
      txtBox.BackColor=System.Drawing.Color.LightGreen
      txtBox.text=“This is a textbox!“
      ViewState(“txtBoxControl“)=True
End Sub
這樣就會在點按鈕的時候動態加載一個TEXTBOX控件,但是這樣會有一個問題:就是在刷新葉面的時候這個TEXTBOX又會不見.這是因為動態加載的控件不會在葉面上自動保存他的VIEWSTATE狀態,要想不出項這种問題,就必須在PAGE_LOAD()事件中實現,具体如下:
 Sub Page_load(Sender As object,e As Eventargs)
       '判斷ViewState中是否存在先前生成的控件的ViewState,存在則重新生成控件並自動加載它先前的ViewState狀態
       If ViewState(”txtBoxControl”) <> Nothing Then
          Dim txtBox As textbox=New textbox
          PlaceHolder1.Controls.Add(txtBox)
          txtBox.ID=”MytextBox”
       End If
End Sub 
動態加載用戶控件是一樣的方法(dim Mycontrol as control=page.loadcontrol(“header.ascx“)PlaceHolder1.Controls.Add(Mycontrol)
------------------------------------------------------------------------
第一次寫文章,有點亂,還望指正!     
      
     
1、资源项目源码均已通过严格测试验证,保证能够正常运行;、 2项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行;、 2项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 、 1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READmE.文件(md如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值