none
大家有没有发现比较好用无Bug的ChildWindow? RRS feed

  • 问题

  • 要求:

    1)支持手动放大、缩小、最大化、最小化。

    2)支持Modal,Modeless模式。

    3)基本无Bug。

    4)免费。

    5)支持在VS.net中直接设计(就比如SL4.0的ChidWindow)。

    曾经下载过一个免费的FloatableWindow,最新修订版。

    1)Bug较多;如:

    11)将IE窗口缩小,随即里面的SL RootVisual也缩小,然后显示Floatabl,然后放大IE窗口,随即SL RootVisual放大,此时就会出现遮罩不完全问题,而SL本身的ChildWindow无此问题。

    12)FloatableWindow显示后,无法在代码里面设置Floatable里面的控件的焦点,而SL的ChildWindow不会出现这种情况;

    2)放大缩小的视觉效果不如Window DesktopChildWindow的放大缩小视觉效果好。比如,

    21)他的拉伸把一个手柄放右下角,而不是四周,

    22)他的拉伸是简单的放大或缩小。而不是很人性化的拉伸。比如在右下角拉大,你应该保持左上角坐标不变,然后放大,而那个Floatable不是,他的左上角坐标会改变,让人感觉很不舒服。

    23)他的那个拉伸效果提示(有点类似与预览)也非常不好。

     

    我曾经大量使用那个不稳定的FloatableWindow,后来发现的哪些问题把我搞苦了。最后权衡之下,还是用SL本身的ChildWindow.

    如果大家有免费的好ChildWindow,请奉献。

    如果大家也没有,TFSoft就准备自己开发,总归要用。

    其实开发这个ChildWindow应该不是非常难的事情,不知道为什么那个微软就做一个不让缩放的ChildWindow给我们用?

    通过历时10个月对SL以及C#研究,我觉得里面根本没有半点技术难度,但是的确要完美处理,还是比较烦人。有人做不?TFSoft是想做这么一个T4ChildWindow。

    2010年9月23日 13:31

答案

  • 1)主要是这段时间,我手头不需要做什么项目,所以有时间整理这些东西,提高一下自己。

    2)其实T4RemarkToolTipService, T4ChildWindow, T4ExcelToXaml等都没有花太多的时间,也没有经过严格的测试。真正好用的是T4Data系列( T4DBConnection, T4DBParameter, T4DBParameterCollection, T4DataColumn, T4DataColumnCollection, T4DataRow, T4DataRowCollection, T4DataHelper),经过了几个项目的测试,证明没有问题。(SL端直接访问后台数据库的一套解决方案,这个才是真正投入实际的应用,再多个项目中使用,没有发现什么Bug,稳定,快速,简单)。

    3)T4ChildWindow也基本搞好了,是居于Popup的东西。我同样发现Popup问题比较多。微软的Popup不是很成熟。SL里面省略了很多东西,事件的路由有点问题。当然,我目前已经完成的T4ChildWindow绝对不会比SL本身的ChildWindow差。如果只是实现模态对话框,我的T4ChildWindow现在已经完全没有问题。姑且叫做T4ChildWindow 1.0版本吧。

    4)关键是我是业余的,而且研究C#、SL时间很短(刚满10月),没有太多的时间去整理使用文档。因此,我也就不想在CodePlex上面了。又要注册,好烦人的。

    5)如果有人愿意一同合作,我倒是想吧这些个东西整理一下。

    6)我从来不怕程序被其他人复制拷贝,乐意开源。因为,计算机技术是变化的,编程思想是没办法拷贝的。

    7)T4ChildWindow 代码较长,这里发不了。

    • 已标记为答案 Mog Liang 2010年9月30日 10:57
    2010年9月27日 10:57

全部回复

  • 我没研究过ChildWindow。Popup在Silverlight中属于比较特殊的控件,以前版本问题很多,用它实现的控件也问题多多,不晓得Silverlight4怎么样。

    TFSoft要是乐意奉献就太好了,你可以像SilverlightToolkit一样,在CodePlex上建个开源项目,做个控件集合,把T4RemarkToolTipService,T4ChildWindow以及神奇的报表生成器放进去。你可以在论坛里广播项目的进展:)


    Mog Liang
    2010年9月27日 5:43
  • 1)主要是这段时间,我手头不需要做什么项目,所以有时间整理这些东西,提高一下自己。

    2)其实T4RemarkToolTipService, T4ChildWindow, T4ExcelToXaml等都没有花太多的时间,也没有经过严格的测试。真正好用的是T4Data系列( T4DBConnection, T4DBParameter, T4DBParameterCollection, T4DataColumn, T4DataColumnCollection, T4DataRow, T4DataRowCollection, T4DataHelper),经过了几个项目的测试,证明没有问题。(SL端直接访问后台数据库的一套解决方案,这个才是真正投入实际的应用,再多个项目中使用,没有发现什么Bug,稳定,快速,简单)。

    3)T4ChildWindow也基本搞好了,是居于Popup的东西。我同样发现Popup问题比较多。微软的Popup不是很成熟。SL里面省略了很多东西,事件的路由有点问题。当然,我目前已经完成的T4ChildWindow绝对不会比SL本身的ChildWindow差。如果只是实现模态对话框,我的T4ChildWindow现在已经完全没有问题。姑且叫做T4ChildWindow 1.0版本吧。

    4)关键是我是业余的,而且研究C#、SL时间很短(刚满10月),没有太多的时间去整理使用文档。因此,我也就不想在CodePlex上面了。又要注册,好烦人的。

    5)如果有人愿意一同合作,我倒是想吧这些个东西整理一下。

    6)我从来不怕程序被其他人复制拷贝,乐意开源。因为,计算机技术是变化的,编程思想是没办法拷贝的。

    7)T4ChildWindow 代码较长,这里发不了。

    • 已标记为答案 Mog Liang 2010年9月30日 10:57
    2010年9月27日 10:57