3

CodePlex で利用できる優れたモックアップ ライブラリに基づいて、一連のウィンドウ モックアップ テンプレートを作成しています。

私は BaseMockup を自分のコントロールのベースとしても使用しており、既存のコントロールからサブ派生するためにここにリストされている手順と同じ概要に従いました(新しい空のクラスを作成し、デフォルトのスタイルを /Themes/generic. xaml など)

コントロールはうまく機能しています。唯一のことは、アセット ライブラリに表示されないことです。これは、サブ派生であるか、接続するためにいくつかの属性 ( WinForms コントロールの ToolboxItemAttributeに相当するものですか? ... 動作しませんでした) が必要なためだと思います。

コントロールから直接派生するようにコードを変更すると、それが表示されます - カスタム属性は必要ありません。もちろん、それは私がやろうとしていることの目的を無効にします...

私が見つけた唯一のことは、いくつかの 記事で、レジストリ キーをいじくりまわすようにと 言っているのですが、どれも明確ではなく、Blend 4 でこれを行う決定的な方法を示唆しているものもありません。最後の記事は、Blend 4 のヒント記事として宣伝されていますが、他の 2 つのコンテンツを盗用しているという結論に達しました (Blend 3 の場合)。

それが私の唯一のオプションですか - DLL を登録しますか? これを行うより良い方法はありますか?

4

3 に答える 3

1

私はあなたがレジストリキーをいじくり回す必要があると信じています。具体的には、

32ビット:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NET Framework \ v4.0.30319 \ AssemblyFoldersEx

64ビット:HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NET Framework \ v4.0.30319 \ AssemblyFoldersEx

コントロールアセンブリの名前で新しいキーを作成します。次に、このキーの下のデフォルトの文字列値を編集し、コントロールアセンブリがインストールされているディレクトリに値を設定します。 完全な例については、ここを参照してください(Silverlightパスを使用)。

于 2011-08-17T02:33:06.803 に答える
1

少し前に私はこれについてのブログ投稿を書きまし。レジスタといくつかのディレクトリを設定するための.regファイルと.batファイルを含めました。それがあなたが探しているものだと思います。

于 2011-08-16T22:20:38.563 に答える
1

見つかった - 結局、アナログ属性があり、それはToolboxBrowsableAttributeです。

セットアップするにはもう少し複雑な作業が必要ですが、うまく機能します。レジストリをいじる必要はありません。デザイナー メタデータ プロバイダー クラスを作成し、アセンブリを属性付けしてデザイナーが検出できるようにし、メタデータ プロバイダー内のサブ派生コントロールに属性を追加する必要があります。

インターフェイスは 2008 と 2010 の間でかなり変更されているため、使用している Visual Studio のバージョンに適したバージョンのページを選択してください。

CodeProject に関するこの記事には、これを設定するための優れた実際の例がいくつかあります。ただし、これらはすべて 2008 年のスタイルなので、2010 を使用している場合は注意してください。

于 2011-08-18T18:41:54.657 に答える