use"lang.vl"
|
use "win.vl"
|
use "dev:vm[xdwgrid.vm]"
|
|
unit vbusiness.vpage
|
[
|
BindComputerDlgNew is extend win__;
|
about BindComputerDlgNew
|
[
|
field:
|
|
method:
|
[
|
xdwgrid__ dw_list;
|
int OnRetrieve()
|
{
|
xml__ x = new xml__;
|
x.setNativePointer(xml__ ::CreateInstance());
|
|
xaserverarg__ arg=new xaserverarg__;
|
arg.setNativePointer(arg.CreateInstance());
|
arg = this.GetParam();
|
if(arg.GetArgString("BindComputer"))
|
{
|
string sbys= arg.GetArgString("BindComputer");
|
//alert(sbys);
|
x.LoadXml(sbys);
|
|
}
|
else
|
{
|
|
x.LoadXml("<args></args>");
|
}
|
|
dw_list.Retrieve(x.GetXmlDoc().selectSingleNode("args"));
|
dw_list.ResetUpdateStatus();
|
dw_list.Redraw();
|
return 1;
|
}
|
int OnAddRow(xdwgrid__ dw)
|
{
|
dw.InsertRow(0);
|
return 1;
|
}
|
|
int OnDelRow(xdwgrid__ dw)
|
{
|
int row = dw.GetRow();
|
if(row<1 || row > dw.GetRowCount()) return -1;
|
dw.DeleteRow(row);
|
return 1;
|
}
|
//ÃüÁî·¢²¼º¯Êý
|
int OnCmdDispatch(string comdid)
|
{
|
dw_list.AcceptText();
|
xaserverarg__ arg = new xaserverarg__;
|
arg.setNativePointer(arg.CreateInstance());
|
arg = win__::GetParam();
|
arg.AddArg("comdid",comdid);
|
if (comdid=="ok")
|
{
|
xml__ x = new xml__;
|
x.setNativePointer(xml__ ::CreateInstance());
|
dw_list.DwUpdateAllTo(x.GetXmlDoc());
|
arg.AddArg("xml",x.GetXml());
|
CloseWindow();
|
}
|
else if(comdid=="close")
|
CloseWindow();
|
else if(comdid == "add")
|
OnAddRow(dw_list);
|
else if(comdid == "del")
|
OnDelRow(dw_list);
|
return 0;
|
}
|
|
//ÃüÁî´¦Àíʼþ
|
int OnXCommand(ref TXCommandEvent evt,int p)
|
{
|
return OnCmdDispatch(evt.pStrID);
|
}
|
|
int OnAttachEvent()
|
{
|
//°ó¶¨¹¤¾ßÌõµã»÷ʼþ
|
AttachEvent("WM_XCOMMAND",OnXCommand);
|
}
|
int onload()
|
{
|
OnAttachEvent();
|
|
dw_list = new xdwgrid__;
|
dw_list.setNativePointer(GetControl("dw_list"));
|
dw_list.SetDataObject(GetServerUrl(),"dev:sheet[SysUser.tpl/BindComputer]");
|
dw_list.SetReadOnly(true);
|
if(this.GetParam())
|
{
|
OnRetrieve();
|
}
|
return 1;
|
}
|
]
|
]
|
]
|