|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
因为各系统的API不同,代码调用API编写程序就会遇到很多不兼容的地方,比如Java改写后的Serv-U就不能在手机上执行,手机的游戏也不能直接在微机上执行。在SmartGrid教程(四):数据与行操纵中我们有讲到,在aspx页面(即我们普通讲的"前台")能够使用focus办法来为SmartGrid设置核心单位格,本章我们做个示例来演示一下:
一,在页面增加一个SmartGrid,为复杂起见,我们只为SmartGrid创立一个列
<SmartWeb:SmartGridID="SmartGrid1"runat="server"ColumnSizeable="true"ColumnMovable="true"Height="200px"ReadOnly="false"DataKeyField="ID"Width="300px">
<Columns>
<SmartWeb:TextBoxColumnColumnName="A"HeaderText="A"/>
</Columns>
</SmartWeb:SmartGrid>
二,再在页面增加一个button,我们将完成点击该button,主动将SmartGrid的第二行的第一列设置为核心单位格,创立button的代码以下:
<inputtype="button"value="测试"/>
三,再创立f_focus办法
<scripttype="text/javascript"language="javascript">
functionf_focus(){
vargrid=document.getElementById("<%=this.SmartGrid1.ClientID%>");
grid.focus(1,"A");
}
</script>
下面的this.SmartGrid1.ClientID是猎取SmartGrid的客户端ID,不要觉得在js中就不克不及如许用,实际上是能够的。
四,在前面为SmartGrid绑定四行数据,以便做测试。
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
DataTabledt=newDataTable();
dt.Columns.Add("A");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
this.SmartGrid1.DataSource=dt;
this.SmartGrid1.DataBind();
}
}
OK,一切测试代码终了,实行页面,点击"测试"按钮,光标定位到第二行第一列,以下图,申明测试乐成。
一切aspx页面测试代码以下:
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="Demo._Default"%>
<%@RegisterAssembly="Smart.Web.UI.WebControls.SmartGrid"Namespace="Smart.Web.UI.WebControls"
TagPrefix="SmartWeb"%>
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title></title>
<scripttype="text/javascript"language="javascript">
functionf_focus(){
vargrid=document.getElementById("<%=this.SmartGrid1.ClientID%>");
grid.focus(1,"A");
}
</script>
</head>
<body>
<formid="form1"runat="server">
<SmartWeb:SmartGridID="SmartGrid1"runat="server"ColumnSizeable="true"ColumnMovable="true"
Height="200px"ReadOnly="false"DataKeyField="ID"Width="300px">
<Columns>
<SmartWeb:TextBoxColumnColumnName="A"HeaderText="A"/>
</Columns>
</SmartWeb:SmartGrid>
<inputtype="button"value="测试"/>
</form>
</body>
</html>
一切cs页面测试代码以下:
usingSystem;
usingSystem.Data;
namespaceDemo
{
publicpartialclass_Default:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
DataTabledt=newDataTable();
dt.Columns.Add("A");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
this.SmartGrid1.DataSource=dt;
this.SmartGrid1.DataBind();
}
}
}
}
我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。 |
|