原文:asp.net动态加载ascx用户控件

在主aspx/ascx文件中,将目标ascx1,ascx2控件拖拉到其页面中,然后删除,目的是要生成:Register 代码,然后在主文件中定义DIV或Td之类的,设置ID ,runat="server",接下来LoadControl("ascx1")

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="loginState.ascx.cs" Inherits="v3_loginState" %>
<%@ Register Src="loginState1.ascx" TagName="loginState1" TagPrefix="uc1" %>
<%@ Register Src="loginState2.ascx" TagName="loginState2" TagPrefix="uc2" %>
<%@ Register Src="loginState3.ascx" TagName="loginState3" TagPrefix="uc3" %>
<link href="../v3/css.css" rel="stylesheet" type="text/css" />
<div id="logState" runat="server">

</div>
----------------

//是否登录
if (Session["VIPUSERNAME"] == null)
{
//没有登录
ct = LoadControl("loginState1.ascx");
}
else
{}

logState.Controls.Clear();
logState.Controls.Add(ct);
----------------------

网上其它文章:

~动态加ascx~
// .aspx
例如:定义一个 <div id= "test " runat= "server " >
// .aspx.cs
Control uc = Page.LoadControl( "你的.ascx路径 ");
test.Controls.Add(uc);
这时就可以显示控件uc的内容.其中要调用的控件要注册到本页面
《详细》
private CreateContorlUI SingleUIControl;//声明用户控件

private void ControlAdd()
{
SingleUIControl = (CreateContorlUI)Page.LoadControl( "CreateSingleUI.ascx ");//加载用户控件,这里用户控件和页面在同一个目录
SingleUIControl.ID = "SingelUI ";//设置用户控件ID

this.PlaceHolderSingle.Controls.Add(SingleUIControl);//添加用户控件到页面
}

--------------

步骤一: 把ascx控件拖入设计窗口,然后转入html模式,保留定义
如果你需要多个ascx的话,请全部拖入。
但是把相应的内容删除。(因为我们需要动态加载)
在需要填入控件的地方,放个容器,比如td,并设定在服务器端运行

<TD id="tdpan" runat=server></TD>

2:动态调用
UserControl myusercontrol = (UserControl) LoadControl ("../includes/pageNavigater.ascx") ;
Type myusertype = myusercontrol.GetType();
//下面是给ascx赋值
PropertyInfo myuserinfo1 = myusertype.GetProperty("RelatedDatagrid");//) .GetProperty("RelatedDatagrid");
myuserinfo1.SetValue(myusercontrol,gridhwcy ,null);

PropertyInfo mypassinfo = myusertype.GetProperty("torefresh");
mypassinfo.SetValue(myusercontrol,true,null );

PropertyInfo myuserdatasource = myusertype.GetProperty("RelatedDataSource");
myuserdatasource.SetValue(myusercontrol,dv,null);

tdpan.Controls.Clear();
tdpan.Controls.Add(myusercontrol);

asp.net动态加载ascx用户控件的更多相关文章

  1. ASP.NET MVC中加载WebForms用户控件(.ascx)

    原文:ASP.NET MVC中加载WebForms用户控件(.ascx) 问题背景 博客园博客中的日历用的是ASP.NET WebForms的日历控件(System.Web.UI.WebControl ...

  2. asp.net 动态添加多个用户控件

    动态添加多个相同用户控件,并使每个用户控件获取不同的内容. 用户控件代码: 代码WebControls using System; using System.Collections.Generic;  ...

  3. 在aspx页动态加载ascx页面内容,给GridView控件绑定数据

    在aspx页动态加载ascx页面内容 //加载ascx页面内容Control c1 = this.Page.LoadControl("WebUserControl1.ascx"); ...

  4. ASP.NET动态加载用户控件的方法

    方法是使用LoadControl方法,根据用户控件的相对路径,动态生成用户控件对象 用户控件 public class UserControlA :UserControl { public UserC ...

  5. [ASP.NET]asp.net动态加载用户控件

    用户控件 // 用户控件源码 namespace wzjr.control { public partial class Topic : System.Web.UI.UserControl { pub ...

  6. ASP.NET MVC加载ASCX之后,并为之赋值

    Insus.NET有写过一篇<ASP.NET MVC显示UserControl控件(扩展篇)>http://www.cnblogs.com/insus/p/3642634.html ,还没 ...

  7. ASP.NET同页面内【用户控件与父页面】以及【用户控件与用户控件】之间方法调用

    在用户控件中,获取父页面的方法 1:方法没有参数(userInfor()) string userInfor = Convert.ToString(this.Page.GetType().GetMet ...

  8. asp.net动态加载程序集创建指定类的实例及调用指定方法

    以下类中有三个方法: LoadAssembly:加载指定路径的程序集 GetInstance:根据Type动态获取实例,用泛型接到返回的类型 ExecuteMothod:执行实例中的指定方法 /// ...

  9. ASP.NET动态加载Js代码到Head标签中(三种方法)

    方法一代码如下: HtmlGenericControl Include2 = new HtmlGenericControl("script"); Include2.Attribut ...

随机推荐

  1. Dapper的使用

    轻量型ORM框架Dapper的使用 /// <summary> /// 查询操作 /// </summary> /// <typeparam name="T&q ...

  2. Ubuntu 14.04 Android 使用Maven一个 用例project

    在说明书前面描述SDK通过使用Ant发展. 本文试图在此基础上使用Maven发展. 在这里,我们需要使用maven-android-plugin. 在本文中,参考官方文件: https://code. ...

  3. JAVA基金会 (三)反射 反思的深度分析

    上一页已经推出反映的一些基本概念,这主要是通过一个例子反映谈的过程,以及样品的实际应用. 这个样例是这种设计思路:从一个属性文件里读取一段字符串,然后,依据该字符串生成相应的类实例对象:这之后另一个增 ...

  4. JQuery EasyUI学习框架

    前言 前端技术,新项目的开发拟使用EasyUI框架(基于EasyUI丰富UI组件库),项目负责人的提示EasyUI分配给我这个任务.发展前,我需要这对于一个新手EasyUI框架学习一些基本的入门.记录 ...

  5. springmvc 接收对象 滴灌摘要

    js 对象 该阵列看起来像 我明白http://blog.csdn.net/baicp3/article/details/12752255本文 我们指示样品棒 data3一个js对象.遗嘱java当代 ...

  6. Scut游戏server引擎Unity3d访问

    Scut提供Unity3d Sdk包.便利的高速发展和Scut游戏server对接: 看Unity3d示为以下的比率: 启动Unity3d项目 打开Scutc.svn\SDK\Unity3d\Asse ...

  7. 警告: git command could not be found. Please create an alias or add it to yo

    5 Answers active answertab=oldest#tab-top" title="Answers in the order they were provided& ...

  8. 分布式中使用Redis实现Session共享(转)

    上一篇介绍了如何使用nginx+iis部署一个简单的分布式系统,文章结尾留下了几个问题,其中一个是"如何解决多站点下Session共享".这篇文章将会介绍如何使用Redis,下一篇 ...

  9. [SignalR]配置路由

    原文:[SignalR]配置路由 注册路由,在代码如下(SignalR 1.*): 脚本修改如下: 但是其官方文档解释是: By default, the route URL which client ...

  10. 【MongoDB】在windows平台mongodb切片集群(三)

    在过去的两年我们博客详细阐述了零碎工作集群和打造过程.在这篇博客中,我们主要分析测试结果一起支离破碎集群. 首先来看看碎片集群的每个状态.你可以看出来复制集A和B都是正常的: 一.开启分片集合 开启一 ...