10

Windows Mobile上のC#UserControlの場合(完全なWindowsで知っている場合は回答してください...動作する可能性があります)、コントロールのパブリックプロパティの1つで[デザイナープロパティ]ウィンドウに表示される内容をどのように変更しますか。例えば:

private Color blah = Color.Black;

public Color Blah
{
    get { return this.blah; }
    set { this.blah = value; }
}

これはコントロールに表示されますが、「その他」カテゴリにあり、説明やデフォルト値はありません。「DesignerCategory」のようなSystem.ComponentModelの設定を使用してみました。たとえば、次のようなものです。

[DesignerCategory("Custom")]

しかし、これはクラス宣言にのみ有効であると言います...以前に使用したSystem.ComponentModelアイテムであると誓うことができました...

アップデート:

@ジョンは言った:

DesignerCatogyは、クラスがフォーム、コンポーネントなどであるかどうかを示すために使用されます。

これを試して:

[Category( "Custom")]

それらを取得するために使用する必要がある特定の名前空間はありますか?私はそれらを正確に試しましたが、コンパイラはそれらを認識しません。

.NETCFでは、System.ComponentModelから入手できるように見えるのは次のとおりです。

DataObject,
DataObjectMethod,
DefaultValue,
DesignerCategory,
DesignTimeVisible,
EditorBrowsable

悲鳴を上げないのはEditorBrowsableだけです

4

3 に答える 3

6

DesignerCategoryクラスがフォーム、コンポーネントなどであるかどうかを示すために使用されます。

フルウィンドウの場合、必要な属性は次のとおりです。

[System.ComponentModel.Category("Custom")]

とあなたが使用できる説明のために[System.ComponentModel.Description("This is the description")]

両方を一緒に使用するには:

[System.ComponentModel.Category("Custom"),System.ComponentModel.Description("This is the description")]

ただし、これは一部でsystem.dllあり、WindowsMo​​bileでは異なる場合があります。

于 2008-08-12T11:29:40.610 に答える
4

これはあなたにとって役に立ちますか?私は CF 開発には興味がありませんが、有効にするには XML メタデータを追加する必要があるようです。

http://blogs.msdn.com/bluecollar/archive/2007/02/08/adding-compact-framework-design-time-attributes-or-more-fun-with-textboxes.aspx

興味深い読み物..デバイス上で設計しないため、多くの設計時のサポートがCFから削除されたように見えます..私にはちょっと奇妙に思えます..ハンドヘルドを開発リグとして使用することは想像できません!

良いもののために半分ほど下にスクロールしてください;)

于 2008-08-12T11:51:49.753 に答える
0

この記事は、誰かがデバイス上で設計していることを示唆していません。ただし、コンパクト フレームワーク プロジェクトを作成する場合は、コンパクト フレームワーク (デスクトップ PC 用) を使用してデザイン時のレンダリングを処理します。あなたがそれについて考えるなら、それはあなたが期待していることです。同じフレームワーク (またはほぼ同じフレームワーク) を使用して、設計時に PC でレンダリングを行い、後で実行時にデバイスでレンダリングを行います。問題は、設計時の属性がコンパクトなフレームワークに追加されなかったことです (サイズを縮小すると想定しています)。

于 2009-08-28T04:23:57.197 に答える