小编Ahe*_*Ahe的帖子

Swing数据绑定框架

年前几乎提出了同样的问题,但这个领域有一些新的发展.

为swing应用程序选择(数据绑定)框架似乎非常困难.JSR-295被废弃了,许多提供绑定的swing框架都是正在进行中,被遗弃或者太重了我的非常简单的应用程序.JGoodies Swing套件价格昂贵,但幸运的是它的库是免费的.

有任何人有任何新的UFaceKit的实际经验.它看起来很有希望,但还不成熟.我对Swing实现和文档特别感兴趣.任何有关UFaceKits开发计划的见解都会受到赞赏,因为我可以暂时按框架选择.要求不是什么花哨的,只是使用一个漂亮的API进行绑定.

我还发现了Mogwai dataBinding,但它看起来相当不完整并且需要手动同步激活,这使得它与手工编写的粗粒度同步相比毫无用处.

不完整的框架至少包括Spring RCP和许多JSR-296分支.

那么,JGoodies数据绑定真的是唯一现实的选择吗?或者还有其他可行的解决方案吗?


编辑:
这个问题似乎在谷歌排名相当高,并且接受的答案反映了最初被问到的时间问题.任何想要构建使用数据绑定的新swing应用程序的人都应该检查所有答案,他们有关于该领域最新进展的信息.

java data-binding swing

25
推荐指数
1
解决办法
1万
查看次数

绑定到多个接口时,防止Ninject多次调用Initialize

我们有一个具体的单件服务,它实现了Ninject.IInitializable2个接口.问题是服务Initialize-methdod被调用2次,只需要一次.我们使用的是.NET 3.5和Ninject 2.0.0.0.

Ninject中是否存在一种模式可以防止这种情况发生.两个接口都没有实现Ninject.IInitializable.服务类是:

public class ConcreteService : IService1, IService2, Ninject.IInitializable
{
    public void Initialize()
    {
        // This is called twice!
    }
}
Run Code Online (Sandbox Code Playgroud)

模块看起来像这样:

public class ServiceModule : NinjectModule
{
    public override void Load()
    {
        this.Singleton<Iservice1, Iservice2, ConcreteService>();
    }
}
Run Code Online (Sandbox Code Playgroud)

Singleton是一个定义如下的扩展方法:

    public static void Singleton<K, T>(this NinjectModule module) where T : K
    {
        module.Bind<K>().To<T>().InSingletonScope();
    }

    public static void Singleton<K, L, T>(this NinjectModule module) 
        where T : K, L
    {
        Singleton<K, T>(module);
        module.Bind<L>().ToMethod(n => n.Kernel.Get<T>());
    }
Run Code Online (Sandbox Code Playgroud)

当然我们可以将bool …

ninject

20
推荐指数
1
解决办法
5535
查看次数

为什么MEF有[ImportMany]而不仅仅是[Import]

我只是在我的mef应用程序中找到了一个问题; 问题是,我有一个[Import]而不是[ImportMany]在我的IEnumerable<IFoo>财产.我开始想知道为什么.MEF看到注射目标是"集合"并且可以确定需要集合而不是单个元素.至少Ninject是这样工作的.

有谁有洞察力为什么[ImportMany]需要?我能想到的唯一原因是人们可能想要,[Export(typeof(IEnumerable<IBar>)] public IEnumerable<Bar> { get; }但这真的是这个设计的原因吗?我敢打赌,我不是唯一一个调试过这种错误的人.

dependency-injection mef inversion-of-control

3
推荐指数
1
解决办法
1204
查看次数