asp.net动态加载用户控件,关于后台添加、修改的思考

看下下面这个典型的后台(比较粗糙):

说实在,我很厌倦全部用.aspx文件去做,比如“友情连接”这个模块,就有“添加友情连接”“修改友情连接”“友情连接列表”,简单的话,可以把“添加”“修改”合成一个文件。每次都去建立一个.aspx文件。我现在的想法是用“用户控件+配置文件”去实现,虽然文件数目可能不会少很多。但在编程到一定地步,我想大家会有跟我一样的想法。

首先需要涉及的是动态添加“用户控件”,这个可以根据传参来动态加载,代码如下:


代码如下:

protected Control control;
protected void Page_Load(object sender, EventArgs e)
{

//by ahuinan 2009-4-18
int id = Convert.ToInt32(Request.QueryString["id"]);
switch (id)
{
case 0://不要加载用户控件
Response.Write("您没有加载任何控件");
break;
case 1://加载用户控件
control = Page.LoadControl("~/login.ascx");
control.ID = "uc1";//这里命名是为了可以取得里面控件的值
placeholder1.Controls.Add(control);
break;
default:
break;
}
}

而只需要用到一个.aspx文件,且这个文件中有个用户控件,代码如下:


代码如下:

<asp:placeholder runat="server" ID="placeholder1"></asp:placeholder>

如果这个“用户控件”中有一个ID为“tbxUserName”的TextBox,那么在.aspx文件中,要取得这个的值,代码如下:


代码如下:

((TextBox)placeholder1.FindControl("uc1").FindControl("tbxUserName")).Text

这里是简单的说下我的思路,要配合前面我说过的http://www.jb51.net/article/17829.htm这篇文章实现一个继承自Page的类,在里面写上动态加载用户控件的代码。需要配合一个配置文件去做,这样左边的菜单和动态加载的控件可以统一在配置文件中处理。想法是很清晰的,但写得有点乱,希望有这方面思考的朋友和我交流下,最近和几个朋友聊了,但都没有这样的想法。

(0)

相关推荐

  • asp.net页面master页面与ascx用户控件传值的问题

    aspx 页面与ascx用户控件传值的问题 1.建立ascx控件 2.给ascx加上属性 3.将控件拖入aspx中 4.在aspx的代码中按控件ID访问属性 如: <uc3:left_Repassword ID="left_Repassword1" runat="server" /> left_Repassword1.HighLight = value; 也同样适用于master页面访问ascx ASP.Net访问母版页(MasterPage)控件.属性

  • ASP.NET用户控件技术

    我们发现,利用代码绑定技术我们可以容易的将我们的代码和内容分离开来,利用它可以建立可重用的代码,只是这种技术本身也存在着一些局限性.在本文中,我们将会一同探讨另外一种新的ASP.NET技术:用户控件.    什么是用户控件(User Controls)?  为了能更好的理解用户控件的重要性,我们先来看看一段小小的"历史".在以前的ASP当中,可重用的技术实现选择是相当受限制的.许多的开发者一般都是借助将公共的常用的子过程放到那些包含文件当中的做法来实现一定的所谓代码重用的.比如,如我们

  • C#自定义控件添加右键菜单的方法

    C#自定义控件添加右键菜单非常简单,主要用到控件,像control定义右键菜单,用items.add()叠加右键菜单内容,用click事件处理函数. 1.control是要定义右键菜单的控件. private void control_MouseDown(object sender, MouseEventArgs e) {    if (e.Button == MouseButtons.Right)    {        ContextMenu menu = new rightClickMen

  • 简介Winform中创建用户控件

    步骤: 1.创建一个项目,该项目主要用来设计用户控件. 2.创建一个用户控件窗体,用来设计用户控件. 3.向用户控件窗体中添加一个按钮(button1),给它添加相应的移入.移出事件,实现移入时按钮的背景设置一个图片,移出的时候背景设置另一个图片. 复制代码 代码如下: private void button1_MouseEnter(object sender, EventArgs e)        {            this.button1.Image = Image.FromFil

  • web用户控件调用.aspx页面里的方法

    现在把此web用户控件添加到一.aspx页面中.要实现单击用户控件中的button控件把搜索出来的结果数据绑定到.aspx页面的gridview控件上去,如何实现呢? 如果gridview控件是放在.ascx文件中的话,那我们直接把搜索出来的数据绑定到它上面就行了.但现在gridview是放在.aspx文件里,也就是说web用户控件要如何才能访问母页面的控件,把数据绑定到母页面的控件上去? 解决方法: 1.先在.aspx页面的后台文件.aspx.cs中添加一个绑定数据的方法,代码如下: 复制代码

  • asp.net 用户控件读取以及赋值

    XML内容如下: 复制代码 代码如下: <?xml version="1.0" encoding="utf-8" ?> <SystemVersion> <Item> <Version_ID>1</Version_ID> <Version_Name>CN</Version_Name> </Item> <Item> <Version_ID>2</

  • C#自定义控件VS用户控件

    C#中自定义控件VS用户控件大比拼 1 自定义控件与用户控件区别 WinForm中, 用户控件(User Control):继承自 UserControl,主要用于开发 Container 控件,Container控件可以添加其他Controls控件 自定义控件(Custom Control):继承自 Control,主要用于开发windows控件的最基本的类,比如 Text,Button 控件 2 要开发自己的控件的几种方法[1] 复合控件(Composite Controls):将现有的各种

  • 解析C#自定义控件的制作与使用实例的详解

    上篇:控件制作本例是制作一个简单的自定义控件,然后用一个简单的测试程序,对于初学者来说,本例子比较简单,只能起到抛石引玉的效果.我也是在学习当中,今后会将自己所学的逐步写出来和大家交流共享.第一步:新建一个控件库项目:myControl 第二步:从工具箱里面拖动1个PictureBox.1个Button.6个Lable控件到用户界面上,布局如下: 如上图,设置pictureBox的Name为picBox,背景为白色,Button的Name为btnOpen,另外靠左的三个Lable的Text属性分

  • .Net WInform开发笔记(三)谈谈自制控件(自定义控件)

    末日这天写篇博客吧,既然没来,那就纪念一下. 这次谈谈自制控件,也就是自定义控件,先上图,再说 1.扩展OpenFileDialog,在OpenFileDialog中添加各种文件(.txt,.jpg,.excel等等)的预览功能 2.重写ListBox,增加折叠.鼠标背影.分类等功能 -----------------------------分割线--------------------------------------------------------------一.扩展OpenFileD

  • C#实现用户自定义控件中嵌入自己的图标

    本文实例讲述了C#实现用户自定义控件中嵌入自己的图标.分享给大家供大家参考,具体如下: 下面给出一下具体的步骤. 1. 新建一个用户控件 2. 向资源文件是添加一张图片,图片格式可以是bm,ico 大小最好是 16 * 16 啦! 3. 选中用户控件图标,单击"右键>属性"把 "生成操作 的属性值改为:嵌入的资源(Action Resource) 4. 第四步: [ToolboxBitmap(typeof(CutPitureNew_WPF), "CutPitu

随机推荐