2017-03-20 4 views
2

自分のWPFユーザーコントロールを画像のようにリージョンに配置するために実装する必要があるインターフェース。 私はカスタムビジネスロジックをWDEに追加する必要があります。誰かが私にこれを行うより良い方法を教えてください。インタラクションビューの置換Genesys Workspace Desktop Edition

WDE

私が使用して、いくつかのビューを置き換えることができます。IObjectContainer.RegisterType<Interface,Class>(); をしかし、私は対話の窓を交換する方法がわかりません。

答えて

2

ビューアマネージャでビューを設定する必要はありません。まず、あなたのビューを登録し、その後あなたがこの

viewManager.ViewRegionByName["InteractionDetailsRegion"].Add(new ViewActivator(){ 
ViewType = typeof(IMyView), ViewName = "MysampleView" 
}) 

などの後viewmanagerに関連する領域にビューを追加する必要があり、あなたのビューとのviewmodelを作成する必要がありますが地域をacordingであなたのWPFユーザーコントロールを参照してください必要があります。あなたはgeneysのドキュメントwikiから地域をチェックすることができます。しかし、ToolbarWorkplaceRegionを最初にチェックすると、ビューがメインウィンドウに挿入されます。

+1

ありがとうございます!私は 'public partial class CustomView:UserControl、IMainToolbarInteractionContainerView'の実装を行い、' Initialize() '' container.RegisterType ();でそれを登録しました。私が電話を受け入れると、私のカスタムビューが自動的にアクティブになります。 –

+0

もう1つ質問がありますが、初期化後にビューを再登録するにはどうすればよいですか?私は相互作用ウィンドウのいくつかのバリエーションを持っています、どのようにルーティングポイントと呼ばれるに従ってウィンドウを変更することができます。 –

+1

実際にはこのようにしないでください。なぜなら内部的にはIoCとして統一を使用しているからです。そうすれば、init時に登録しないと例外が発生する可能性が高くなります。しかし、ビューの非表示/表示のソリューションがあり、ViewActivatorに「条件」を追加し、実行時にtrue/falseを返すことができます。これはあなたが望むすべてではありません。しかし、これを行う唯一の方法だと私を信じてください。他の方法は本当に痛いと例外的です。私は2年以上のIWS/WDEを開発しました。 –