問題タブ [activitydesigner]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
workflow-foundation-4 - カスタム アクティビティをオーバーライドしてダブルクリックし、開いているアクティビティを詳細に無効にする
カスタム アクティビティを使用し、OnMouseDoubleClick メソッドをオーバーライドしています。すべてが正常に機能しますが、アクティビティをダブルクリックすると、その自己がデザイナーに表示されます。これは、デザイナーではワークフロー全体ではなく、このアクティビティのみが表示されることを意味します。カスタム デザイナーでセルフ オープニング アクティビティを無効にする方法。これがActivityDesigner.xaml.csの私のコードです
workflow-foundation-4 - これはバグですか、それとも WF Designer で何か不足していますか?
以下は、セルフ ホスト デザイナーで同じ問題のトラブルシューティングを試みているときに発見されたシナリオです。タイプを含むライブラリ プロジェクトを作成します。私のはこれです。
ここで、Workflow 4.5 コンソール アプリ (またはサービス、それは問題ではないようです) を作成します。ライブラリ プロジェクトを参照します。デザイナーにシーケンスを配置し、このライブラリ タイプの InArgument を作成します。私の場合は Registration です。すべて順調です。デザイナーは満足しています。
次に、別の同一のプロジェクトを作成し、同じライブラリを参照します。最初のプロジェクトから xaml ファイルを開くだけです。ブーム、それはタイプを見つけることができません。
System.Xaml.XamlException: 'プロパティ 'registration' の型 'InArgument(r:Registration)' を解決できませんでした。
xaml のこれは次のとおりです。
セルフ ホスト デザイナーを使用して、この問題のさまざまなバリエーションを見つけて、ライブラリ アセンブリをデザイナーにロードするさまざまな方法を試しましたが、うまくいきませんでした。
これを修正する方法の提案はありますか?
workflow-foundation-4 - カスタム シーケンスの WorkflowItemsPresenter で WF4 のコピーと貼り付けを無効にする
カスタム シーケンス アクティビティで WorkflowItemsPresenter を使用していますが、アクティビティのコピーと貼り付けを無効にしたいと考えています。ICompositeView インターフェイスを使用するいくつかのソリューションを見つけ、それを WorkflowItemsPresenter に適用しようとしましたが、機能していません。WorkflowItemsPresenter でコピー ペースト動作を無効にする方法を知っている人はいますか?
ありがとうございました。
これが私のクレイジーなコードです
BranchSequenceDesigner.xaml
BranchSequenceDesigner.xaml.cs
BranchSequence.cs
c# - カスタム WF4 アクティビティ: DoubleClick で e.Handled = true がバブリングを停止しない理由
こんにちは、自分でネストできるカスタム WF4 アクティビティを使用しています。ダブルクリック イベントをキャッチする必要があるため、OnPreviewMouseDoubleClick メソッドを書き直しました。私の問題は、アクティビティが他のアクティビティの内側にあり、内側のアクティビティにダブルクリックすると、両方でダブルクリックが呼び出されることです。e.Handled = true を設定しましたが、機能しません。親アクティビティでダブルクリック イベントの実行を停止するにはどうすればよいですか。
コードの例を次に示します。
ActivityDesigner1.xaml
ActivityDesigner1.xaml.cs
CodeActivity1.cs
workflow-foundation-4 - コレクションにアイテムを追加しても、アクティビティデザイナーは更新されません
デザイナーを再ホストしていて、複数の子アクティビティアイテムをレンダリングするためのWorkflowItemsPresenterを持つツールボックスアイテムを追加しました。したがって、私のモデルアイテムには次のようなコレクションがあります。
バインディングは
デザイナがロードされると、バインディングは完全に正常に機能します。ここで、デザイナーでフィルターが更新されたときに、このコレクションをクリアして新しいアイテムを追加したいと思います。したがって、このフィルタープロパティのsetアクセサーで、次のことを行うメソッドを呼び出します。
コレクションは更新されますが、デザイナーは更新されません。デザイナーのコードビハインドを記述する(つまり、モデルアイテムツリーを介してコレクションを更新する)ことでこれを行う方法があることは知っていますが、理想的には、コードビハインドを持たず、他のWPFアプリケーションと同じように機能することを期待しています。私はいつかから(マルチバインディングを使用したり、イベントを使用したりするなど)方法を考案しようとしてきたので、どんな助けでも大歓迎です。
Cheerio、V
wpf - アクティビティ デザイナー ライブラリ内の共有 WPF リソース
カスタム コントロール、画像、スタイルなどを含む一連のカスタム アクティビティ デザイナーを開発しています。デザイナー XAML は、ライブラリ プロジェクト内の複数のサブディレクトリに分散しています ( WPF アプリケーションではないため、app.xaml は利用できません)。
通常の WPF アプリケーションの app.xaml のように、リソースを格納するための中心的な場所が必要です。
現在、次のようにprojectdir \Properties\lib.xaml ファイルを使用しています。
そして、次のようにすべてのデザイナー XAML からこれを参照します。
ここで、ActDesLibはアセンブリの名前です。
これは機能しますが、少し不器用に見えます。それを行うより良い方法はありますか?
個々の XAML ファイルに特別なマークアップを追加する必要なく、ライブラリ プロジェクトに自動的に含まれる "魔法の" app.xaml のようなファイルはありますか? これにより、複数の開発者が異なるデザイナーで作業している場合でも、一貫したスタイルを適用することが非常に簡単になります。
ところで: Source="..." 属性で相対パスを使用しようとしました。VS2010 内のワークフローでアクティビティを使用すると、これは機能しませんでした。リソースが見つかりませんでした。アセンブリ名を含む絶対パスを使用すると、正常に機能します。しかし、VS2010 または再ホストされたデザイナーが、リソース ディクショナリ ファイルへのパスを、XAML 内の相対参照だけで自動的に見つける方法はありませんか?
workflow-foundation-4 - カスタム アクティビティ デザイナー (タイトルの下に白いボックスがない) を完全に折りたたむ方法は?
私のアクティビティの中には、ユーザーがデザイナーを折りたたんだときにタイトル バーを表示するだけで完全に折りたたむことを好むものがあります。デフォルトでは、折りたたみ可能なデザイナーの標準的な方法(ShowExpanded で datatrigger を使用) を使用している場合でも、タイトル バーの下に空の白い四角形が表示されます (少なくとも .NET 4.0.3 を使用する Win7 では)。
タイトルの下にボックスを表示せずに、上記の Delay アクティビティと同じように表示したいと思います。
この迷惑な白いボックスは、リソースWorkflowElementDesignerDefaultTemplateで定義されているデフォルト テンプレートが原因であると思われます。このテンプレートには、Margin="7" の ContentPresenter があります。
そのため、アクティビティ デザイナー XAML で定義した含まれるものが完全に折りたたまれても、この 7 のマージンは引き続き表示されます。
それを回避する方法はありますか?デザイナーが折りたたまれた状態で表示される場合、マージンを 0 に設定します (または、デフォルト テンプレートから含まれる ContentPresenter に対して Visibility=Collapsed をトリガーすることをお勧めします)。
(あまり混乱していないことを願っていますか?)
c# - WF Designer が System.StackOverflowException を再ホストする
再ホストされた WF4 のデザイナーについて助けが必要です。非常に複雑なワークフローの設計に使用する必要がありますが、ネストされたアクティビティには制限があります。(1 つのブランチで 40 番目のネストされたアクティビティです)。その制限を超えた場合、PresentationCore.dll で System.StackOverflowException が発生しました。
System.StackOverflowException の制限を増やす方法はありますか?
ダウンロード用のコード例は次のとおりです。アプリケーションをビルドして実行した後、スクロールバーを番号 40 の最後のアクティビティに移動すると、例外が発生するはずです。