透过现象看本质-使用vs.net第二天
今天遇到一个问题,当我在作一个类似webeditor的东西的时候,我在以前开发的用户自定义控件,没法在vs.net项目中使用。![](/Emoticons/angry_smile.gif)
我以微软。net入门教程中的一个例子,来讲述我出现的问题
http://chs.gotdotnet.com/quickstart/util/srcview.aspx?path=/quickstart/aspplus/samples/webforms/pagelets/Pagelet2.src
按照微软入门的例子编辑后,在一个vs.net的页面中加入自定义控件,注册自定义控件
<%@ Register TagPrefix=“Acme“ TagName=“Message“ Src=“pagelet2.ascx“ %>
并在vs.net中一个apsx页面中,定义其属性
void SubmitBtn_Click(Object sender, EventArgs E) {
MyMessage.Text = “消息文本已更改!“;
MyMessage.Color = “red“;
}
结果编译的时候出现,MyMessage没有定义。。。。。。
在原aspx文件中,运行通过的,为什么放在一个vs.net中aspx文件就不能定义呢?
上网看看资料,发现这部分资料分为两类:![](/Emoticons/77_77.gif)
一类就是类似微软入门教程上面的东西;
另一类就是将如何编程完成一个自定义控件。
具体讲到如何将一个已经定义好的控件,转换到vs.net中去,却没有。
结果倒腾半天作了一些尝试,都没有成功。
老师教育的好,看问题要看本质。
vs.net作asp.net的本质是什么?
说白了,asp.net就一个被类化的应用程序!!!
vs.net的编译是什么意思?
就将一个页面(被定义成类的页面)编译称为dll应用程序。![](/Emoticons/omg_smile.gif)
![](/Emoticons/shades_smile.gif)
想到这里我忽然明白了,![](/Emoticons/what_smile.gif)
原来,虽然编辑的控件,在vs.net中没有定义在类中,所以,它没法被其页面类(空间)来使用。
因此,我重新按照vs.net的aspx页面规则定义如下:
namespace MyControls {
public class myEditor :system.web.ui.usercontrol......
...........
然后在原来的aspx文件中,引用类,定义属性。。。编译通过。。。
原来这么简单。![](/Emoticons/72_72.gif)
![](/Emoticons/angry_smile.gif)
我以微软。net入门教程中的一个例子,来讲述我出现的问题
http://chs.gotdotnet.com/quickstart/util/srcview.aspx?path=/quickstart/aspplus/samples/webforms/pagelets/Pagelet2.src
按照微软入门的例子编辑后,在一个vs.net的页面中加入自定义控件,注册自定义控件
<%@ Register TagPrefix=“Acme“ TagName=“Message“ Src=“pagelet2.ascx“ %>
并在vs.net中一个apsx页面中,定义其属性
void SubmitBtn_Click(Object sender, EventArgs E) {
MyMessage.Text = “消息文本已更改!“;
MyMessage.Color = “red“;
}
结果编译的时候出现,MyMessage没有定义。。。。。。
在原aspx文件中,运行通过的,为什么放在一个vs.net中aspx文件就不能定义呢?
上网看看资料,发现这部分资料分为两类:
![](/Emoticons/77_77.gif)
一类就是类似微软入门教程上面的东西;
另一类就是将如何编程完成一个自定义控件。
具体讲到如何将一个已经定义好的控件,转换到vs.net中去,却没有。
结果倒腾半天作了一些尝试,都没有成功。
老师教育的好,看问题要看本质。
vs.net作asp.net的本质是什么?
说白了,asp.net就一个被类化的应用程序!!!
vs.net的编译是什么意思?
就将一个页面(被定义成类的页面)编译称为dll应用程序。
![](/Emoticons/omg_smile.gif)
![](/Emoticons/shades_smile.gif)
想到这里我忽然明白了,
![](/Emoticons/what_smile.gif)
原来,虽然编辑的控件,在vs.net中没有定义在类中,所以,它没法被其页面类(空间)来使用。
因此,我重新按照vs.net的aspx页面规则定义如下:
namespace MyControls {
public class myEditor :system.web.ui.usercontrol......
...........
然后在原来的aspx文件中,引用类,定义属性。。。编译通过。。。
原来这么简单。
![](/Emoticons/72_72.gif)