|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。由于有伴侣在问,怎样把SmartGrid列做成能够选择日期的列,好比怎样将My97DatePicker控件兼并到列中往,恰好自己有做过这个功效,以是在这做个复杂的示例。
本章以My97DatePicker控件为例,由于这个控件相称的壮大,并且也很好用,利用这个控件的伴侣也十分的多。
起首我们要懂得My97DatePicker控件的利用办法,这个这里就不讲了,不太懂得的伴侣能够到上面这个网址看看。
http://www.my97.net/dp/index.asp
从下面的网站中下载到My97DatePicker控件的源码,然后我们新建一个WebForm页面,将My97DatePicker援用到WebForm页面中,并往这个页面增加一个SmartGrid控件,以下代码:
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="WebForm3.aspx.cs"Inherits="WebApplication1.WebForm3"%>
<%@RegisterAssembly="Smart.Web.UI.WebControls.SmartGrid"Namespace="Smart.Web.UI.WebControls"
TagPrefix="SmartWeb"%>
<html>
<headrunat="server">
<title></title>
<scriptsrc="My97DatePicker/WdatePicker.js"type="text/javascript"></script>
</head>
<body>
<formid="form1"runat="server">
<SmartWeb:SmartGridID="SmartGrid1"runat="server"ReadOnly="false">
<Columns>
<SmartWeb:RefColumnColumnName="PreRevDate"HeaderText="交货日期"Format="yyyy-MM-dd"
DataType="System.DateTime"EditorClientScriptUrl="MyRef.htc"ExtendedProperties="<?xmlversion=1.0?><Info><RefInfo></RefInfo></Info>"/>
</Columns>
</SmartWeb:SmartGrid>
</form>
</body>
</html>
从下面的代码中能够看到我们为SmartGrid增加了列"交货日期",这个列援用了MyRef.htc文件,我们能够在MyRef.htc文件中,将该列与My97DatePicker控件组合起来。
MyRef.htc的代码以下:
<public:component>
<PUBLIC:PROPERTYNAME="grid"/><!--前往以后的Grid,经由过程该属性,能够会见以后Grid的相干信息-->
<PUBLIC:ATTACHEVENT="onclick"ONEVENT="Click()"/>
</public:component>
<scriptlanguage="javascript">
varinput=element.getElementsByTagName("INPUT")[0];
functionClick(){
input.id=event.x+ab+event.y+cc;
WdatePicker({el:$dp.$(input.id)});
}
</script>
也是很复杂的几段代码,如许,全部功效就已完成了,在WdatePicker({el:$dp.$(input.id)})这段代码中我们能够为My97DatePicker控件增加各类参数,以完成分歧的需求。最终效果以下:
大概有伴侣对varinput=element.getElementsByTagName("INPUT")[0]这句代码不太了解,这个是由于SmartGrid控件的可输出列都是将一个input标签挪动到核心列供用户输出数据,以是能够使用element.getElementsByTagName("INPUT")[0]来猎取到以后可输出列。而这个input的ID就是使用event.x+ab+event.y+cc这个划定规矩来定名的。
代码很复杂吧,有必要的伴侣按这个试一下吧。捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。 |
|