Pro visual c++/cli and .net 2.0 platform2 学习笔记(12 第九章到第十二章)

 

第九章 基本的windows forms应用程序

[STAThreadAttribute]single-threaded apartment。

apartment state COM中的概念,.net不用apartement线程,但为了safe,apartment state被设为single-threaded apartment,以防一个COM对象被包装后应用于程序中。

windows消息转换为.net事件。

代码或IDE的属性窗口中的改变都会立刻反映到对方。

注意:在InitializeComponent()中的改变要小心,会使IDE不能正常工作。

小技巧:不同于缺省值的属性,IDE中被显示为加粗

.net设计好了许多委托和事件源类,程序员设计事件接受类。

IDE中可以对不同的事件使用相同的事件处理器:直接在属性菜单中选择//前提是委托的签名相同

TextBoxBase抽象类可以用来自定义字处理程序。.net提供的三个控件TextBox, MaskedTextBox, RichTextBox。

word wrap自动换行

/*这章程序的模式:在.h文件中写代码,.cpp不变。用//分隔不同的控件属性改变。private事件处理器,不同控件或组件的事件处理代码都在同一个Form类中,和MFC不一样,MFC在相应的控件类的代码文件中编写消息处理,这样会不会很乱呢??疑问中*/

//winform编程也没有源代码。不向MFC

第十章 高级windows forms应用程序

ToolStrip, StatusStrip, MenuStrip.

ErrorProvider

NotifyIcon

第十一章 GDI+作图

所有的GDI+功能都在System.Drawing.dll中。

Paint事件处理器和OnPaint虚函数。事件处理器在IDE中双击即可,事件的实现消耗要大一些;虚函数速度快一些。

Graphics没有构造函数,获得Graphics实例的几种方法。

DoubleBuffer

第十二章 ADO.net和数据库开发

连接:SqlConnection

查询:SqlCommand, OleDbCommand, OdbcCommand,OracleCommand

CommandType:TEXT,Procedure

Procedure(Parameters->Add;cmd->Parameters["@LastName"]->Value = Name;)

CommandText

SqlDataReader

ExecuteReader

while(reader->Read())

{

Console::WriteLine(reader["StoryID"]);//这里就是属性index呀?确实简洁。不过也可以用Getxxx()

}

修改数据库内容:

ExecuteNonQuery()

ExecuteScalar()//返回一个对象,通常是数据库中的计数或者是求和。

事务处理:

try{

SqlTransaction:connection->BeginTransaction;transaction->Commit();

}

catch (Exception ^e)

{

transaction->Rollback("AuthorTransaction");

}

disconnected ADO.NET

被下载到本地内存的数据库。

XML格式传输,可以自由的通过防火墙;避免了以前的system-level COM marshalling requests的问题。//疑问?

ADO.NET的核心类:

手工建立数据库程序的步骤:

1. Create a SqlConnection.

2. Create a SqlDataAdaptor.

3. Implement a SelectCommand property.

4. Implement an InsertCommand property (optional).

5. Implement an UpdateCommand property (optional).

6. Implement a DeleteCommand property (optional).

7. Create a DataSet.

8. Populate (fill) the DataSet.

IDE开发数据库程序步骤:

NewItem-DataSet

DataGridView

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值