<%@import namespace="system.data"%>
<%@import namespace="system.data.sqlclient"%>
<%@ register tagprefix="bookpub" tagname="getdsn" src="get_dsn.ascx"%>
<html>
  <head>
    <title>pagelet</title>
    <script language=vb runat=server>
    sub page_load(sender as object,e as eventargs)
      if not page.ispostback then
        dim objconn as sqlconnection
        dim objcomm as sqldataadapter
        dim objds as dataset
        dim strsql,strdsn as string
        strsql="select * from employ"
        strdsn=pagelet1.get_dsn
        objconn=new sqlconnection(strdsn)
        objcomm=new sqldataadapter(strsql,objconn)
        objds=new dataset()
        objcomm.fill(objds,"employ")
        datagrid1.datasource=objds.tables(0).defaultview
        datagrid1.databind()
      end if
     end sub
    </script>
  </head>
  <body >
    <form runat="server">
    <bookpub:getdsn id="pagelet1" bolsql=true runat=server/>
    <asp:DataGrid ID="datagrid1" Runat=server/>
    </form>
  </body>
</html>
------------------------------------------------------------------
上面的代码我想改成codebehind窗体。并且在codebehind的窗体调用get_dsn.ascx文件,但是,不知道
<%@ register tagprefix="bookpub" tagname="getdsn" src="get_dsn.ascx"%>
如何在.aspx.vb中包含,它的格式是如何的?

解决方案 »

  1.   

    <%@ register tagprefix="bookpub" tagname="getdsn" src="get_dsn.ascx"%>
    不用动方法:
    在aspx.vb文件中class下
    1、加一个类型为get_dsn的变量pagelet1
    2、在if not page.ispostback then前加
    pagelet1=(get_dsn)Me.FindControl("pagelet1")后面就正常了不过VB.net不熟pagelet1=(get_dsn)Me.FindControl("pagelet1")
              -------强制类型为get_dsn
      

  2.   

    Dim Mygetdsn As New getdsnMygetdsn = Me.FindControl("pagelet1")
      

  3.   

    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="index.aspx.vb" Inherits="yusuan.index"%>
    <%@ Register TagPrefix="yusuan" TagName="head" Src="head.ascx"%>
    调用时:
    <body>
    <BODY>
    <YUSUAN:HEAD ID="Head" RUNAT="server"></YUSUAN:HEAD>
    </body>