System.Windows.Forms.AnchorStyles.Right)));
this.btnSave.Location = new System.Drawing.Point(46, 296);
this.btnSave.Name = "btnSave";
this.btnSave.TabIndex = 5;
this.btnSave.Text = "&Save";
this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
//
// DataWindowTest
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(444, 333);
this.Controls.Add(this.btnSave);
this.Controls.Add(this.dw);
this.Controls.Add(this.btnInsert);
this.Controls.Add(this.btnDelete);
this.Controls.Add(this.btnRetrieve);
this.Name = "DataWindowTest";
this.Text = "利用DataWindow.NET设计";
this.ResumeLayout(false);
}
#endregion
private void btnRetrieve_Click(object sender, System.EventArgs e)
{
try
{
if ( !Trans.IsConnected)
{
Trans.Connect();
}
dw.SetTransObject(Trans);
dw.Retrieve();
}
catch( Sybase.DataWindow.DbErrorException ee)
{
MessageBox.Show("数据库连接出错!"+ee.SqlErrorText);
return;
}
}
private void btnInsert_Click(object sender, System.EventArgs e)
{
//插入一行
int insertRow = dw.InsertRow(0);
dw.Scroll(insertRow);
//赋初值
dw.SetItemDouble(insertRow,"id",9999);
dw.SetItemString(insertRow,"fName","Huang");
dw.SetItemString(insertRow,"lName","Yong");
dw.SetItemString(insertRow,"address","ChangSha");
dw.SetItemString(insertRow,"city","ChangSha");
}
private void btnDelete_Click(object sender, System.EventArgs e)
{
dw.DeleteRow(dw.CurrentRow);
}
private void btnSave_Click(object sender, System.EventArgs e)
{
try
{
dw.Update();
Trans.Commit();
}
catch (Sybase.DataWindow.DbErrorException ee)
{
MessageBox.Show("更新不成功!原因:"+ee.SqlErrorText);
Trans.Rollback();
}
catch (Sybase.DataWindow.DataWindowNotCreatedException ee)
{
MessageBox.Show("数据窗口还没有创建!");
Trans.Rollback();
}
catch(Sybase.DataWindow.MethodFailureException ee)
{
MessageBox.Show("更新不成功!原因:"+ee.Message.ToString());
Trans.Rollback();
}
}
}
}
通过PB,或DataWindow Builder创建PBL库和DataWindow对象后,就像在PB中操作一样,指定PBL库位置和DataWindow控件相关连DataWindow对象,就可对DataWindow进行相关的操作如dw.SetTransObject(Trans);dw.Retrieve();怎么样?对原PB
程序员来说很熟悉吧!
关键词:在.NET中调用DataWindow设置数据库