問題タブ [design-time]

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.

0 投票する
3 に答える
1694 参照

.net - UITypeEditor と IExtenderProvider

特定の種類のコントロールを追加のプロパティで拡張するエクステンダー (IExtenderProvider) があります。これらのプロパティの 1 つについて、UITypeEditor を作成しました。これまでのところ、すべて正常に動作しています。

エクステンダーには、UITypeEditor の一種のデフォルトとして使用しようとしているプロパティ自体もいくつかあります。私がしたいのは、(拡張コントロールではなく) エクステンダー自体にプロパティを設定できるようにすることです。拡張コントロールの追加プロパティの 1 つで UITypeEditor を開くと、 UITypeEditor をエクステンダーのプロパティの値に設定します。

簡単な例: ExtenderProvider にはプロパティ DefaultExtendedValue があります。フォームで、このプロパティの値を「My Value」に設定しました。拡張コントロールには、プロバイダーを通じて、UITypeEditor を持つプロパティ ExtendedValue があります。プロパティ ExtendedValue のエディターを開くと、デフォルト (初期) 値が「My Value」に設定されている必要があります。

これを行うのに最適な場所は、IWindowsFormsEditorService.DropDownControl または .ShowDialog を呼び出す直前の UITypeEditor.EditValue であると思われます。

唯一の問題は、問題のプロパティの値を読み取って UITypeEditor に設定するために、EditValue でエクステンダー プロバイダー自体を取得できない (または方法を発見していない) ことです。コンテキストによって拡張された制御が可能になりますが、この場合は役に立ちません。

私がしようとしていることを達成する方法はありますか? どんな助けでも大歓迎です!

ありがとうトム


@samjudson: それは悪い考えではありませんが、残念ながら、私はそこにたどり着きません. エクステンダー プロバイダーのインスタンスごとに、この既定値を個別に設定できるようにしたいと考えています。(拡張コントロールのグループごとに異なる値を持つ単一のフォームに複数ある場合があります。)

0 投票する
5 に答える
6622 参照

.net - カスタム Winform コントロールのベースライン スナップライン

テキスト ボックスを含むカスタム ユーザー コントロールがあり、(テキスト ボックス内のテキストの) ベースライン スナップラインをカスタム コントロールの外に表示したいと考えています。デザイナー (ControlDesigner から継承) を作成し、SnapLines をオーバーライドしてスナップラインにアクセスすることは知っていますが、カスタム ユーザー コントロールによって公開されたコントロールのテキスト ベースラインを取得する方法を知りたいです。

0 投票する
2 に答える
978 参照

visual-studio-2003 - VS.NET 2003 コントロール ライブラリ プロジェクトでデザイン時間を検出する方法

以下のコードは、デザイン モード (VS.Net 2003 - コントロール ライブラリ) であるかどうかを検出するために期待どおりに機能しません。

if (this.Site != null && this.Site.DesignMode == true)
{
// デザイン モード
}
else
{
// ランタイム
}

複雑なユーザー コントロールで使用され、別のユーザー コントロールから派生し、他のユーザー コントロールが含まれます。
VS.NET 2003 で設計時間を検出する別の方法はありますか、または上記のコードの問題は何ですか?

0 投票する
3 に答える
984 参照

asp.net - VS デザイン タイム ユーザー コントロール CSS の複製

ユーザー コントロールが aspx ページにドロップされたときに、出力 html でスタイルシート リンク タグが重複しないようにしたいと考えています。ただし、スタイルシート リンク タグを省略すると、スタイルシートの設計時のサポートが得られません。

誰でもこの問題を回避する方法を知っていますか?

0 投票する
5 に答える
8359 参照

c# - .NET Windows フォームの設計時の規則

スレッドを開始し、ファイルを開き、他のクラスからの入力を待機するオブジェクトがあります。入力を受け取ると、それをディスクに書き込みます。基本的に、これはスレッドセーフなデータ ロギング クラスです...

ここが奇妙な部分です。オブジェクトを使用するデザイナー (Visual Studio 2008) でフォームを開くと、ファイルが作成されます。明らかに設計時の vhost プロセスで実行されています...

奇妙なことに、別のプロジェクトで問題を再現できませんでした。デザイナーで実行されるコードと実行されないコードのルールが何であるかはわかりません。たとえば、Windows フォーム コンストラクターでファイルを作成しても、実際には設計時にファイルが作成されません。

説明は何ですか?参照はありますか?

0 投票する
2 に答える
2667 参照

c# - カスタム設計時コマンドを WinForms コントロールに追加

カスタム コマンド add design time を追加したいカスタム WinForms コントロール (コントロールから継承、つまりタイマーとしてのユーザー インターフェイス jsut なし) があります。

これは、メニューの「右クリックして [項目の編集...] を選択する」ことに似ています。

これは可能ですか?どのように?

また、カスタム コントロールの設計時のエクスペリエンスの向上に関する一般的な資料 (オンライン) をお勧めできますか?

0 投票する
3 に答える
633 参照

asp.net - プロパティ ウィンドウで利用可能な厳密に型指定されたリソース クラスを表示する

カスタム コントロールを作成する最初の試みとして、Gridview Web コントロールを拡張しています。

拡張機能の一部として、コントロール内のグリッド列ヘッダーのローカライズをカプセル化しています。特に、この機能を有効にするためにいくつかのプロパティを公開しています。

bool AutoLocalizeColumnHeaders - 機能を有効にします

string HeaderResourceFile - ヘッダー テキストを取得する厳密に型指定されたリソース クラスを識別します

OnRowDataBound ハンドラーをオーバーライドし、Reflection を使用して適切な ResourceManager を取得して、ヘッダー テキストを設定しています。これはすべてうまく機能していますが、名前を手動で入力するのではなく、ユーザーが選択できるように、使用可能な厳密に型指定されたリソース クラスのリストを [プロパティ] ウィンドウに表示したいと考えています。

利用可能なクラスを表示するドロップダウンを表示するための TypeConverter を作成しましたが、表示する利用可能なクラス名のリストを取得する方法がわかりません。

私はかなり長い間試みてきましたが、成功せず、正気を失いつつあります。リフレクションを使用してこれを達成する方法があるに違いないと思いますか?

0 投票する
2 に答える
1223 参照

.net - .NET Designtime Datasource (コンボボックス用)

私は、自分の順番で ComboBox にバインドする必要がある BindingSource にバインドするために使用できる ObjectDataSource を作成しようとしています。

簡単なクラスと、このクラスの簡単なリストを作成しました (以下を参照)。

  1. Times リスト クラスがツールボックスに表示されないため、バインディング ソースのデータ ソースとして選択できるようにフォームにドラッグできません。
  2. 2 番目のオプションは、新しいプロジェクト データソース (ObjectDataSource) を作成することです。ここでは「バインドしたいオブジェクトを選択する」ように求められます。Times クラスをインスタンス化する form1 に、friend/public/private 変数を追加しました。ただし、この変数は表示されません。プロジェクトの名前空間に表示される唯一のオブジェクトは Form1 です。

私は何が欠けていますか?

0 投票する
3 に答える
228 参照

.net - Windows.Netコントロール-プロパティテンプレートの作成

TextBoxコントロールをフォームエディタにドラッグして作成した.NetWindowsアプリケーションのすべてのテキストボックスコントロールには、次のデフォルトプロパティが必要であると想定します(一部のテキストボックスインスタンスはこれらのプロパティを上書きできます)。

テキストの配置:中央
のサイズ変更:コンテンツごと
ドック:左、上、右

今では、必要になるたびにこれらのプロパティを設定するのは面倒で手動で退屈な作業になります。これらのプロパティを「アセンブリレベル」でデフォルト設定できる方法はありますか。ユーザーコントロールで問題が解決することはわかっていますが、これはコストのかかる解決策であると考えており、この問題にはよりシンプルで洗練された解決策があるはずだと思います。ありがとう

0 投票する
3 に答える
1048 参照

c# - C# で設計時に参照アセンブリを反復処理できますか?

.NET コンポーネントを作成しようとしています。コンポーネントはフォーム/ユーザー コントロールにドロップされ、設計時にコンポーネントの親フォーム/ユーザー コントロールによって参照されるアセンブリ内の属性にアクセスする必要があります。設計時にこれらのアセンブリを取得することは可能ですか?