asp.net做的网站:
http://eyou.allnet.cn 一个交友网站,算是我做过的功能性最强的一个了,呵呵,我本身做的大的就不多,开发了差不多一个月多点儿的时间吧,当然,我只是做后台程序,前台美工会给我做页子.
http://sxtk.allnet.cn 一个图库网站,其实主要就是图片的发布,可以自动打水印自动生成缩略图,功能方面主要是有个人像册功能(运营得还不错) 企业像册功能(根本没有运营起来...我费了好大劲儿做的) 图片仓库(大家可以上去存图片) 以及一个帖图区,总共开发了也有一个多月的时间.
----------------------------------------------------------------------------------------
无法找到脚本库“/aspnet_client/system_web/1_1_4322/webuivalidation.js“。请尝试手动放置此文件
如果你用到验证控件,就需要把aspnet_client目录拷贝到你的项目根目录下了。
验证控件自动产生的客户端程序会在webuivalidation.js中
可以直接拷贝,也可以通用运行aspnet_regiis -i重新安装
C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/aspnet_regiis -c 重新安装一下脚本就行,不用重装 asp.net 的
出现这个问题就是因为你在IIS中更改了默认目录,问题解决只需复制此文件夹aspnet_client到您改的目录下OK。
系统目录:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/aspnet_regiis -i 重新映射脚本。
这是因为你的.Net框架错误或IIS设置的虚拟目录发生了变动之后引起的问题!
解决的方案有很多,这里给你一种快点的的办法:
打开开始菜单-程序-Microsoft Visual Studio .NET 2003-Visual Studio .NET 工具-Visual Studio .NET 2003 命令提示
直接输入以下命令:
aspnet_regiis -i
这个时候会现以下提示:
开始安装 ASP.NET (1.1.4322.0)。
已安装完 ASP.NET (1.1.4322.0)。
然后再输入以下命令:
aspnet_regiis -c
这个时候会出现以下提示:
开始复制此版本(1.1.4322.0)的 ASP.NET 客户端脚本文件。
已复制完此版本(1.1.4322.0)的 ASP.NET 客户端脚本文件。
OK!现在应该不会再出现你所说的哪个问题了!
----------------------------------------------------------------------------------------
怎样设定起始页的
1、大小?
2、使最小化、最大化按钮失效?
3、怎样设定起始页使其充满屏幕?
1.
window.moveTo(x,y) //x,y指坐标
window.resizeTo(x,y) //x,y指长度
2.
<script>
<!--
function opwindow()
{
if(window.name!="mis")
{
window.open(location.href,'mis','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,menu=no,min=no,max=no');
window.opener = null;
window.close();
}
}
if(window.name!="mis")
opwindow();
//-->
</script>
主要通过resizable=no
3 最大化??
<script>
<!--
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
</script>
----------------------------------------------------------------------------------------
1--怎么实现,当鼠标放在HyperLink上时,HyperLink的图片发生变化,离开时又恢复原状。
(我知道是要指定HyperLink的imageUrl,但是没有这个事件mouseon or mouseover)
2--怎么实现新闻的感动显示,就像csdn上滚动新闻显示。。
this.HyperLink1.Attributes.Add("onmouseout","image.src=image/heat.gif");
this.HyperLink1.Attributes.Add("onmouseon","image.src=image/miss.gif");
----------------------------------------------------------------------------------------
就是鼠标第一次移上去时单击为全选,后面的点击就取消全选,如何实现?
还有这个效果该如何实现:鼠标移上去时文本框的内容为全选,然后单击鼠标就取消全选。。。
//鼠标第一次移上去时单击为全选,后面的点击就取消全选
private bool flag = false;
private void textBox1_Click(object sender, EventArgs e)
{
if (flag == false)
{
flag = true;
textBox1.SelectAll();
}
}
private void textBox1_LostFocus(object sender, EventArgs e)
{
flag = false;
}
-----------------------------
//鼠标移上去时文本框的内容为全选,然后单击鼠标就取消全选
private void textBox1_Click(object sender, EventArgs e)
{
}
private void textBox1_MouseEnter(object sender, EventArgs e)
{
textBox1.SelectAll();
}
----------------------------------------------------------------------------------------
谁有DataGrid自定义控件,要有导入excel,word功能和打印功能。
自己继承datagird写一个吧,参考:
在ASP.NET中使用Microsoft Word文档
http://blog.youkuaiyun.com/asthlon/archive/2004/08/17/77037.aspx
DataGrid输出到Excel并进行格式化处理
http://dotnet.aspx.cc/ShowDetail.aspx?id=8A4CBF47-B888-4832-3389-ED3A3A3C8AAB
导入/导出Excel
http://blog.youkuaiyun.com/asthlon/archive/2004/08/17/77037.aspx
----------------------------------------------------------------------------------------
我想把freetextbox里的基本东西弄清楚,使我对开发控件有所了解,而且还可以扩充其一些功能,希望有些研究过freetextbox的高手指点,也希望csdn上的一些朋友发些教程,我也会在这里发些我每天学习的心得,谢谢了。。还有新年快乐!!
http://www.percyboy.com/w/ftb/down/FTB_1.6.3_zh_Source.zip
中文版 1.6.3 在原版本基础上,除了汉化了控件的界面,而且为核心类 FreeTextBox 的每个属性添加了中文说明(DescriptionAttribute),使得控件在 Visual Studio .NET 中显示时属性编辑器中会显示相应的说明。[
还有这个
关于FreeTextBox 1.63/2.0.7/3.0RC/3.0的一些东西原文网址:http://www.blogwind.com/Wuvist/comment.aspx?Article_id=5421
作者:Wuvist
转载者请注明原文出处以及我的名字,谢谢……倘若,您需要使用到文中的javascript函数,亦请保留函数名称。
FreeTextBox应该是应用最广泛的免费asp.net控件之一了……
FreeTextBox Team把FTB称为:“The no.1 free ASP.NET HTML Editor for IE and Mozilla. ”说得可是一点都没有错……
我从去年12月开始做博客风的时候,便使用了FTB 1.6.3破宝汉化版作为后台编辑器。这个版本的FTB,应该是在国内流传最广的版本……
FTB的最大优点是将文本处理都采用JavaScript来处理,避免了asp.net控件时常需要将页面postback的弊病。个人感觉,是有可以将FTB生成的静态页面保存下来,然后将其当作纯xhtml的在不支持asp.net的服务器中使用,只是,工程很大,似乎也没有任何程序员想做这么件事情……毕竟,还有htmlarea等东西存在。
在那个时候,FTB是开源的,并且功能已经足够强大……唯一的遗憾是1.X版本的FTB并不支持Mozilla……我在将其加入博客系统中的时候,也自己添加表情代码风格、图片插入功能,虽然有FTB的源码,但是从使用的角度来说,我不认为在扩展FTB功能的时候应该去修改其c#代码……直接编写新的javascript会灵活很多……我当时使用的是类似:
function Wuvist_code(ftbName) {
if (FTB_IsHtmlMode(ftbName)) return;
editor = FTB_GetIFrame(ftbName);
var range = editor.document.selection.createRange();
var RangeType = editor.document.selection.type;
if ( RangeType == "Text" )
{
range.execCommand("RemoveFormat");
var rangeText = range.htmlText;
range.pasteHTML('<PRE style="font-size:90%;font-family:/'courier new/',courier,serif;line-height:1em;background:#EEEEEE;margin-top:1em; margin-bottom:1em; margin-left:0px;padding:5pt;">'+rangeText+'</PRE>');
}
else if ( RangeType == "None" )
{
alert("你没有选择任何东西,无法完成此功能!");
}
else
{
alert("选择部分中,存在控件,无法进行指定的文本格式化!!");
}
}
的JavaScript来实现的。
从FTB 2.0开始,便支持Mozilla了……好像,只有FTB这一个编辑器可以支持Mozilla……FreeTextBox Team的html/css/javascript的功力实在是强……2.X版本的FTB对于javascript的调用做了大幅度修改……看得出来,相对起1.X版本javascript代码进步了很多……
不过,FTB 2.0开始对源码收费,而且,免费版本只有最基本的编辑功能可以使用,像“清楚word格式”、“统计字数”等得编辑功能都消失了……(不过,我也不清楚是不是我这个白痴不会把他们调用出来……)
因为FTB1.X的图片上传、插入、管理页面存在安全隐患,2.X取消了……不过,它内置的图片插入按钮实在让人窝火……明明就不支持图片上传,为什么要放一个浏览的功能键呢???无数用户以为它可以上传图片,在用户本机上,图片的浏览效果也很好……可惜,也就只有用户本人可以看到而已……
其实,在FTB2.X里面也是可以调用1.X的那个图片管理文件ftb.imagegallery.aspx。我采用的是类似:
function Wuvist_image() {
if (FTB_IsHtmlMode('WTB1')) return;
editor = FTB_GetIFrame('WTB1');
editor.focus();
var folder = '<%=用户图片目录名%>';
var galleryscript = '/ftb.imagegallery.aspx?rif='+folder+'&cif='+folder;
if (isIE) {
imgArr = showModalDialog(galleryscript,window,'dialogWidth:560px; dialogHeight:500px;help:0;status:0;resizeable:1;');
if (imgArr != null) {
imagestring = '<IMG SRC="' + imgArr['filename'] + '" HEIGHT=' + imgArr['height'] + ' WIDTH=' + imgArr['width'] + ' BORDER=0>';
sel = editor.document.selection.createRange();
sel.pasteHTML(imagestring);
}
} else {
alert("图片上传功能限只支持IE。");
}
}
来实现。而插入表情的代码则类似:
function Wuvist_emots(emot) {
if (FTB_IsHtmlMode('WTB1')) return;
editor = FTB_GetIFrame('WTB1');
editor.focus();
if (isIE) {
var range = editor.document.selection.createRange();
range.pasteHTML("<IMG src='images/emot/"+emot+".gif' border=0>");
} else {
selection = editor.window.getSelection();
editor.focus();
if (selection) {
range = selection.getRangeAt(0);
} else {
range = editor.document.createRange();
}
FTB_InsertText('WTB1',"<IMG src='images/emot/"+emot+".gif' border=0>");
}
}
同样的,也可以自己做出“清除word格式”、“统计字数”等等按钮。因为没有FTB源码,自己弄出来的这些新按钮,只能放在FTB编辑器外边,不过,这个应该不是一个大问题吧……我也是比较喜欢通过用纯javacript来实现新功能。
我使用的是FTB 2.0.7版……这个版本的FTB在parse html的时候,似乎有错误……用户在插入类似:
<EMBED src=http://www.blogwind.com/music.mp3 width=375 height=47 type=audio loop="1" autostart="false" controls="ControlPanel,StatusBar" console="Clip1"></EMBED> 的HTML的时候,它经常把“src=http”后面的URL自动去掉……
看的时候可以看到,但是提交后,ftb.text就已把http后的内容干掉了……不知道是哪里的bug……博客园使用的FTB亦有这个问题!
我能够想到的解决办法就是升级到3.0版的FTB,3.0版本也添加了Mac风格,很可爱……
不过,原来发布的FTB 3.0 RC版实在是一个令人失望的版本……好端端的为什么要将所有的javascript/图片整合到dll里面呢?慢……虽然可以选择external source……但是,它并没有提供Mac风格的外部文件……同样的……它也是bug多多……
终于……FreeTextBox Team在12/09/2004发表了新的3.0版……可以完全使用external javascirpt/image……新的图片管理文件ftb.imagegallery.aspx亦非常好用……看其javascript代码,明显由再次做了优化,又简洁了很多……不过,要自己弄添加表情按钮javascipt又得做调整,我写出来的函数类似:
function Wuvist_emot(number) {
ftb = 'WTB1';
img = '<IMG src="images/emot/'+number+'.gif" border=0>';
window.parent.FTB_API[ftb].InsertHtml(img);
}
呵呵……真的简洁很多……
关于FTB 3.0,偶其实还发现了另一个很“关键”的东西……不过,出于对FreeTextBox Team版权的尊重,偶就不写出来了……也许,FreeTextBox Team是故意留下来这样的“后门”吧……反正,也是很简单的事情,大家有兴趣不妨自己研究……偶在博客风中使用了这一技巧……
----------------------------------------------------------------------------------------
<EditItemTemplate>
<asp:RadioButton id="rb_3" runat="server" Text="男" AutoPostBack="false" Checked='<%# Convert.ToInt32(DataBinder.Eval(Container.DataItem,"sex"))==1?true:false %>' GroupName="iSign">
</asp:RadioButton>
<asp:RadioButton id="rb_4" runat="server" Text="女" AutoPostBack="false" Checked='<%# Convert.ToInt32(DataBinder.Eval(Container.DataItem,"sex"))==0?true:false %>' GroupName="iSign">
</asp:RadioButton>
</EditItemTemplate>
在点了编辑以后我在cs页面怎么才能取到这个值??
string city = ((TextBox)e.Item.Cells[1].Controls[1]).Text;文本框的话是这样取道的,单选框怎么取到呢??
要取到的话,参考:
http://datagridgirl.com/customcolumns.aspx
----------------------------------------------------------------------------------------
ado.net详细研究(三) —— DataReader(二) 选择自 bineon 的 Blog
DataReader类
1. 创建DataReader对象
前面提到过没有构造函数创建DataReader对象。通常我们使用Command类的ExecuteRader方法来创建DataReader对象:
SqlCommand cmd = new SqlCommand(commandText,ConnectionObject)
SqlDataReader dr = cmd.ExecuteReader();
DataReader类最常见的用法就是检索Sql查询或者存储过程返回的记录。它是连接的只向前和只读的结果集,也就是使用它时,数据库连接必须保持打开状态,另外只能从前往后遍历信息,不能中途停下修改数据。
注意:DataReader使用底层的连接,连接是它专有的,这意味这DataReader打开时不能使用对应连接进行去他操作,比如执行另外的命令等。使用完DataReader后一定记得关闭阅读器和连接。
2. 使用命令行为指定DataReader的特征
前面我们使用cmd.ExecuteReader()实例化DataReader对象,其实这个方法有重载版本,接受命令行参数,这些参数应该时Commandbehavior枚举:
SqlDataRader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
上面我们使用的是CommandBehavior.CloseConnection,作用是关闭DataReader的时候自动关闭对应的ConnectionObject。这样可以避免我们忘记关闭DataReader对象以后关闭Connection对象。别告诉我你不喜欢这个参数,你能保证你记得关闭连接。万一你忘记了呢?又或者你使用你的partner开发的组件来进行开发呢?这个组件并不一定让你有关闭连接的权限哦。另外CommandBehavior.SingleRow可以使结果集返回单个行,CommandBehavior.SingleResult返回结果为多个结果集的第一个结果集。当然Commandbehavior枚举还有其他值,请参见msdn。
3. 遍历DataReader中的记录
当ExecuteReader方法分会DataReader对象时,当前光标的位置时第一条记录的前面。必须调用数据阅读器的Read方法把光标移动到第一条记录,然后第一条记录就是当前记录。如果阅读器包含的记录不止一条,Read方法返回一个bool值true。也就是说Read方法的作用是在允许范围内移动光标位置到下一记录,有点类似rs.movenext,不是吗?如果当前光标指示着最后一条记录,此时调用Read方法得到false。我们经常这样做:
While(dr.Reader())
{
//do something with the current record
}
注意,如果你对每一条记录的操作可能花费比较长的时间,那么意味着阅读器将长时间打开,那么数据库连接也将维持长时间的打开状态。此时使用非连接的DataSet或许更好一些。
4. 访问字段的值
有2种方法。第一种是Item属性,此属性返回字段索引或者字段名字对应的字段的值。第二种是Get方法,此方法返回有字段索引指定的字段的值。有点难以理解,不是吗?不要紧,看例子就OK了。
Item属性
每个DataReader类都定义一个Item属性。比如现在我们有一个DataReader实例dr,对应的sql语句是select Fid,Fname from friend,则我们可以使用下面的方法取得返回的值:
object ID = dr[“Fid”];
object Name = dr[“Fname”];
或者:
object ID = dr[0];
object Name = dr[0];
注意索引总是从0开始的。另外也许您发现了我们使用的是object来定义对ID和Name,是的,Item属性返回的值是object型,但是您可以强制类型转换。
int ID = (int)dr[“Fid”];
string Name = (string)dr[“Fname”];
记住:确保类型转换的有效性是您自己的责任,否则您将得到异常。
Get方法
起始我们在第一篇文章里面已经使用过改方法了。每个DataReader都定义了一组Get方法,比如GetInt32方法把返回的字段值作为.net clr 32位证书。同上面的例子一样我们用如下方式访问Fid和Fname的值:
int ID = dr.GetInt32(0);
string Name = dr.GetString(1);
注意虽然这些方法把数据从数据源类型转化为.net数据类型,但是他们不执行其他的数据转换,比如他们不会把16位整数转换为32位的。所以您必须使用正确的Get方法。另外Get方法不能使用字段名来访问字段,也就是说上面的没有:
int ID = dr.GetInt32(“Fid”); //错误
string Name = dr.GetString(“Fname”); //错误
显然上面这个缺点在某些场合是致命的,当你的字段很多的时候,或者说你过了一段时间以后再来看你这些代码,你会觉得很难以理解!当然我们可以使用其他方法来尽量解决这个问题。一个可行的办法是使用const:
const int FidIndex = 0;
const int NameIndex = 1;
int ID = dr.GetInt32(FidIndex);
string Name = dr.GetString(NameIndex);
这个办法并不怎么好,另外一个好一些的办法:
int NameIndex = dr.GetOrdinal(“Fname”); //取得Fname对应的索引值
string Name = dr.GetString(NameIndex);
这样似乎有点麻烦,但是当须要遍历阅读器种大量的结果集的时候,这个方法很有效,因为索引只需执行一次。
int FidIndex = dr.GetOrdinal(“Fid”);
int NameIndex = dr.GetOrdinal(“Fname”);
while(dr.Read())
{
int ID = dr.GetInt32(FidIndex);
string Name = dr.GetInt32(NameIndex);
}
到目前为止,我们已经讨论了DataReader的基本操作了。至于DataReader的有些高级超作我们以后再讨论。
下次我们构建一个项目——个人通讯录(单用户版本)。在这个项目中我们将用到前面讨论的所有知识,同时在这个项目里面我将尽量是这个项目符合多层体系结构标准。