原理:在生成datalist列时ItemDataBound触发,也就是说每生成一列就触发一次。这个事件的触发要早于itemcommand.
datalist里面嵌套datalist :
内层控件数据绑定与事件声明在外层的ItemDataBind中实现
private void dlFileType_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataList dl = null;
Label labTypeID = null;
dl = (DataList)e.Item.FindControl("dlFileList")
labTypeID = (Label)e.Item.FindControl("lbFileType");
string typeID = labTypeID.Text.ToString();
int iTypeID = Convert.ToInt32(typeID);
string commandText = "select * from tbfile";
commandText = commandText + " Where TypeID=" + iTypeID;
//------------
string connString = ConfigurationSettings.AppSettings["dsn"];
SqlConnection conn = new SqlConnection();
conn.ConnectionString = connString;
conn.Open();
SqlDataAdapter myCommand = new SqlDataAdapter(commandText,conn);
DataSet ds = new DataSet();
myCommand .Fill(ds,"tbFile");
conn.Close();
//------------
dl.DataSource = ds.Tables["tbFile"];;
dl.DataBind();
}
}
protected void dtdaleibie_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataList temlist = (DataList)e.Item.FindControl("dtxiaoleibie");
Label lbvist = (Label)e.Item.FindControl("lbvist");
int id=Convert.ToInt32(lbvist.Text);
tongyong ty = new tongyong();
tongyong.selecontent = "*";
tongyong.table = "YX_ProductClass";
tongyong.where = "YX_ParentID="+id;
tongyong.orderby = "order by YX_OrderID,YX_ID asc";
temlist.DataSource = ty.search();
temlist.DataBind();
}
}
QQ、MSN、ICQ、Skype等聊天工具在线代码
2006-08-21 19:53
|
QQ在线代码 <a target=blank href=http://wpa.qq.com/msgrd?v=1&uin=你的QQ号码><img border="0" src=http://wpa.qq.com/pa?p=1:你的QQ号码:5 alt="点击这里给我发消息"></a> QQ在线代码生成页,可以选择多款显示的在线图片 http://imis.qq.com/webpresence/code.shtml
MSN在线代码 <A HREF="http://snind.gotdns.com:8080/message/msn/你的msn用户名"> <IMG SRC="http://snind.gotdns.com:8080/msn/你的msn用户名" align="absmiddle" border="0" ALT="MSN Online Status Indicator" onerror="this.onerror=null;this.src='http://osi.hshh.org/msnunknown.gif';"></a> 红色地方可替换自己喜欢的MSN在线图片
ICQ在线代码
<A HREF="http://osi.hshh.org:8088/message/icq/你的ICQ号码">
<IMG SRC="http://osi.hshh.org:8088/icq/你的ICQ号码" align="absmiddle" border="0" ALT="ICQ Online Status Indicator" onerror="this.onerror=null;this.src='http://osi.hshh.org/icqunknown.gif';"></A>
|
在GTalk列表里添加 gtalkonlinestatus@gmai...
网页中嵌入外部页面的四种方法
一.应用框架技术
---- 要在宿主页面中嵌入外部页面的方法是,在宿主页面中包含外部页面的位置插入“< IFRAME name="XXX" width=X height=X frameborder=0 src="XXX.htm" >< /IFRAME >”语句即可(注意: < IFRAME >标签中的各种属性含义请查阅相关技术手册)。
---- 如果想在嵌入的外部页面过长时不出现滚动条,在外部文件< body >标签中加入“scroll=no”或者在宿主页面< IFRAME >标签中加入“scrolling=no”即可。
---- 但这样做会出现一个问题,就是宿主页面和外部页面背景色不同,这样会给人造成页面不是一个整体的感觉。这时,只要在引入的外部文件中使用和宿主页面相同的背景色就可以解决这一问题。注意,如果您使用的是IE 5.5或以上版本的话,直接在标签< IFRAME >内设置属性allowTransparency="true"(即框架背景透明)即可。
---- 在应用框架技术时,为什么不使用框架页面(即< FRAMESET >)呢?现在有很多网站是通过使用框架页面来分割版面的,并达到了统一网站整体风格的目的,但笔者的体会是框架页面的操作灵活性较差,不像内建框架(即< IFRAME >)这样可以在宿主页面中的任何位置插入。
二.使用Scriptlets组件技术
---- 应用这种技术的方法是在宿主页面中包含外部页面的位置插入“< OBJECT style="border: 0px" type="text/x-scriptlet" data="XXX.htm" width=X Height=X >< /OBJECT >”语句即可(注意: < OBJECT >标签中的各种属性含义请查阅相关技术手册)。
---- 在IE 5.0及以后版本中,scriptlets和Html组件(HTCs)被重新命名为Windows脚本编程组件(WSC),其特点类似于上文所讲的框架技术。它有自己的不透明方形区域,并覆盖在宿主页面上,因此不能很平滑地用于具有纹理背景的宿主页面中,其工作方式类似于ActiveX控件,具有自己独立的事件、方法和属性。
三.使用脚本文件技术
---- 我们知道document.write方法可以在宿主页面中输出内容,这样就可以通过在宿主页面中引入外部脚本文件来达到嵌入外部页面的目的。方法是在宿主页面中包含外部页面的位置插入“< SCRIPT language="javascript" src="import.js" >< /SCRIPT >”,然后对外部页面进行改造,将每一行内容写入document.write中,并另外保存在扩展名为js的新文件中。
---- 这种方法的特点是外部页面不具有自己的方形区域,和宿主页面浑然一体,但由于外部页面内容全部写在脚本中,无法做到所见即所得,必须等到脚本运行时才能看到实际效果,这样就为修改调试增加了困难。
四.使用内置行为技术
---- 在IE 5.0及以后版本,引入了一项被称为“DHTML行为”的新功能,并在其中内置了许多默认行为。当将一种行为应用于宿主页面上的标准HTML元素时,它可以增强该元素的默认功能,并提供该行为中定义的任何新方法、属性或事件。其实大家对行为技术并不陌生,微电脑世界2001年18期的《主页加入收藏设置面面观》一文就提到了利用IE中内置的homepage行为技术进行主页设置的方法。我们同样可以利用IE 5.0内置的download行为,来达到在宿主页面中嵌入外部页面的目的,其代码如下。
<span />
<script>
function onDownloadDone(downDate){
outHTML.innerHTML=downDate
}
ieDownload.startDownload('../static/article.htm',onDownloadDone)
</script>
---- 其原理就是使用download行为提供的startDownload方法下载一个外部文本文件,并将文件中的文本内容作为参数传递给onDownloadDone函数,然后再由该函数对文本内容进行处理,在本例中是作为showImport对象的内容显示出来。如果在函数中对文本内容做相应的处理,并与相关技术结合,如XML,就可以实现更为复杂的功能。
---- 这种方法使得外部页面不再具有自己的方形区域,和宿主页面浑然一体; 提供了更大的灵活性,通过使用对象的innerHtml属性可以真正做到在宿主页面的任何位置插入外部文件内容; 修改简单,只须用可视网页编辑软件(如FrontPage 2000)将外部页面修改即可轻松改变网站整体风格。可以说这是在宿主页面中嵌入外部页面的最好方法 (注: 以上代码在Windows 98 SE/IE 5.0中测试通过)。
|
在线制作icon图标
http://www.chami.com/html-kit/services/favicon/ 进入主页以后自动播放声音 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
[Flags]
public enum Flag:long { View=1, Edit=2, Delete=4 } 特性[Flag]告诉编译器,当编译器看到Flag枚举时,它会充许你用|(or)操作符组合枚举值, 基础知识: 位运算 枚举Flag 当编译器看到Flag枚举时,它会充许你用|(or)操作符组合枚举值, 常用操作,检查是否存在 return bReturn; public Flag SetBit(Flag administer,Flag mask) administer |= mask;操作相当于 administer = administer |mask; 从枚举中减去一种状态 如 : 另外,标记为flag的枚举类型,可以不设置值
在asp.net系统中 ,HttpContext.Current.User实现了一个接口IPrincipal,IPrincipal包含了另一个接口Identity 我们在设计User类的时候继承此接口 实现IPrincipal接口方法 public bool IsInRole(string role) 怎样和asp.net挂钩呢,这里可以在登陆时做检查 if(HttpContext.Current!=null){ 在使用时
我倾向于使用Attribute
int appID; public CheckPermissionAttribute(ApplicationID app, Permission allMask) } 按下来,设计一个基类,继承自Page: public class PageBase : Page /// <summary> /// <summary> Check(att.AllMask); protected override void OnInit(EventArgs e)
如何使用: [CheckPermission(2, Flag.View)] } 若没有查看权限,会自运导向错误页面。 在类上应用挺方便。 方法上应用我于一个方法比较麻烦,我还没有找到在页面class里怎么获取当前调用的类名. 可以调用 CheckMethod(方法名称);如 |