以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  从某用户那里学的技巧  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4211)

--  作者:狐狸爸爸
--  发布时间:2009/9/4 9:55:00
--  从某用户那里学的技巧

用OuterTableBuilder虽然可以动态生成可以编辑的表,但是没有办法生成窗口。
但是我看到某用户用OuterTableBuilder生成的表一样可以用窗口编辑,而且用的是邦定。
原来他是在设计阶段用OuterTableBuilder生成表,然后在另一个永久性的表设计窗口,控件邦定到刚刚生成的表。


--  作者:易服
--  发布时间:2009/9/4 9:58:00
--  

做个示例也让我们学习一下


--  作者:yangming
--  发布时间:2009/9/4 9:59:00
--  

又学了一招,呵呵


--  作者:狐狸爸爸
--  发布时间:2009/9/4 10:00:00
--  
当然用代码动态加入控件和邦定也是可以的,但是事先设计好总是省事一点
--  作者:yangming
--  发布时间:2009/9/4 10:00:00
--  
我做外部表,喜欢做一个主表,专门放所有的窗口,其主表就是内部表
--  作者:reachtone
--  发布时间:2009/9/4 11:25:00
--  
一直以为outtablebuilder创建的是外部表,也就是能够物理保存到外部数据库上的,所以就一直没用这个,总觉得多此一举。刚看了老六的这个帖子,认真一测试,居然不是!原来它也是和ExecuteReader生成的datatable一样,是临时表,只不过它可以编辑保存,项目重启后就不存在了。
这是个好东西啊,我被这个名字给误导了!真晕。。
老六当初为什么不直接在SQlCommand下加个方法,用于生成这种可以编辑保存的临时表呢?比如就叫ExecuteWriter,用户再不会搞混了。一个reader,是只读的;一个writer是可写的,多清晰啊。
[此贴子已经被作者于2009-9-4 11:26:46编辑过]

--  作者:易狐
--  发布时间:2009/9/4 11:55:00
--  
以下是引用reachtone在2009-9-4 11:25:00的发言:
一直以为outtablebuilder创建的是外部表,也就是能够物理保存到外部数据库上的,所以就一直没用这个,总觉得多此一举。刚看了老六的这个帖子,认真一测试,居然不是!原来它也是和ExecuteReader生成的datatable一样,是临时表,只不过它可以编辑保存,项目重启后就不存在了。
这是个好东西啊,我被这个名字给误导了!真晕。。
老六当初为什么不直接在SQlCommand下加个方法,用于生成这种可以编辑保存的临时表呢?比如就叫ExecuteWriter,用户再不会搞混了。一个reader,是只读的;一个writer是可写的,多清晰啊。
[此贴子已经被作者于2009-9-4 11:26:46编辑过]



这个倒是支持,如果改起来不麻烦的话,改一改倒是更好!


--  作者:yangming
--  发布时间:2009/9/4 13:08:00
--  
以下是引用reachtone在2009-9-4 11:25:00的发言:
一直以为outtablebuilder创建的是外部表,也就是能够物理保存到外部数据库上的,所以就一直没用这个,总觉得多此一举。刚看了老六的这个帖子,认真一测试,居然不是!原来它也是和ExecuteReader生成的datatable一样,是临时表,只不过它可以编辑保存,项目重启后就不存在了。
这是个好东西啊,我被这个名字给误导了!真晕。。
老六当初为什么不直接在SQlCommand下加个方法,用于生成这种可以编辑保存的临时表呢?比如就叫ExecuteWriter,用户再不会搞混了。一个reader,是只读的;一个writer是可写的,多清晰啊。
[此贴子已经被作者于2009-9-4 11:26:46编辑过]

同意,支持!


--  作者:kylin
--  发布时间:2009/9/4 13:38:00
--  
支持这个建议
--  作者:狐狸爸爸
--  发布时间:2009/9/4 16:26:00
--  
不同的,OuterTableBuilder生成的是一个标准的DataTable,可以出现在界面中,也可以用DataTables("XX")来引用。
而ExecuteReader生成的DataTable是一个用完就丢的。