問題タブ [windows-forms-designer]
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.
c# - OnPaint をオーバーライド
OnPaint をオーバーライドしてコントロールに正方形を描画する場合、デザイナーでプレビューしているときに e.graphics.draw... が表示されるようにするにはどうすればよいですか?
.net - アンマネージ コードの Windows フォーム?
Visual Studio には洗練された GUI インターフェイス デザイナーが付属しており、それが .NET アプリケーションからしかアクセスできず、マネージ C++ でさえアクセスできないことに腹を立てています。
少なくともアンマネージ/外部コードで C DLL タイプのインターフェイスを開く簡単な方法はありますか?
c# - プロパティ グリッドにイベントが表示されない
特別な検索テキスト ボックスを作成しています。特に、次の 2 つのイベントがあります。
問題は、下の 2 つだけがデザイン ビュー プロパティのイベント エクスプローラーに表示されることです (名前が何であれ...)。そして、私はなぜだろうと思っています。標準を使用していないからEventArgs
ですか?ただし、そうではないはずです。つまり、それを使用しない他のイベントがあります...キープレス関連のイベントなど...
クラスは次のGenericEventArgs<T>
ようになります。
ここで何が間違っていますか?
c# - Visual Studio Designer が常にコントロールを変更しようとしています
私はやや複雑な UserControl を使用しており、Visual Studio 2008 を使用すると、無害な不快感が生じます。Designer でコントロールを開くたびに、Designer によって設定された無害な値の一部 (Size プロパティの初期化) がすぐに変更されます。これらの変更を保存して閉じ、再度開くと、ほとんどの場合、コントロールの別のコンポーネントの初期サイズを無限に変更する必要があると判断されます。幸いなことに、私はどこでも自動サイズ調整を使用しているので、これらの変更は無害ですが、これを使用するのは非常に面倒です。何がうまくいかないのかをどこから始めればよいのか、私にはまったくわかりません。今の私の唯一の考えは、コントロールを開くたびに、デザイナーが自動サイズ変更の結果を初期サイズ フィールドに割り当てているということです。原因/修正に関するアイデアはありますか?
編集:また、アプリケーション設定を使用して、アプリケーションの実行全体で特定のサイズ変更可能な子コンポーネントのサイズを保存していますが、デザイナーがデフォルトのみを使用する必要があることを十分に理解できることを本当に願っています.
.net - 非定数型のプロパティに DefaultValue を設定しますか?
Size 構造体を返す「mySize」プロパティを持つ Windows.Forms コンポーネントがあります。私の意図は、mySize が明示的に設定されていない限り、コンポーネントのサイズに基づいて返された mySize をこのプロパティで自動的に計算することでした。その場合、mySize の設定値を返します。残念ながら、コンポーネントをフォームに埋め込んでいるので、Windows フォーム デザイナーは、mySize プロパティの値を明示的に生成して設定することを決定しました。
そのため、デザイナーが立ち去って私を放っておくように、DefaultValue を設定する必要があります。
System.ComponentModel.DefaultValue を扱う回答を読んだので、コンストラクターでプロパティの値を手動で設定する必要があることはわかっていますが、見つけた回答とドキュメントは、DefaultValue を False に設定することのみを扱っています。絶え間ない。
Size 構造体は定数ではないため、VB コンパイラは、Size は定数ではないため、Type Size の Property の DefaultValue として Size を設定できないと教えてくれます。
これは私の脳を傷つけます。
プロパティを使用する代わりに getMySize メソッドと setMySize メソッドを作成することで、おそらく問題を回避するコードを作成できますが、Size のデフォルト プロパティを設定する方法が実際にあるかどうかを知りたいです。
注意: 私は mySize を、Size プロパティ (150x150 の DefaultValue を持っているので、Sizes の DefaultValues を設定できるようです) をオーバーライドするためのある種の混乱した試みとして使用していません。mySize は、クラスが必要とするサイズの値です。
c# - Designerで機能しない汎用フォームの具体的な実装
私は以下のように定義された基本クラスを持っています(私はDevExpressコンポーネントも使用しています):
他の場所から読んだものとは反対に、私はまだこのクラスを設計することができます。そのために、そこから具体的なクラスを作成する必要はありませんでした。ただし、その子孫である具象クラスを作成すると(以下のように)、そのクラスはデザイナでは機能しません。
このメッセージが表示されます:
このファイル内のどのクラスも設計できないため、このファイルの設計者を表示できませんでした。デザイナは、ファイル内の次のクラスを検査しました。ConcreteFormClass---基本クラス'BaseFormClass'をロードできませんでした。アセンブリが参照されていること、およびすべてのプロジェクトがビルドされていることを確認してください。
誰かがこれを見たことがありますか?既知の回避策はありますか?
winforms - Winforms Designer はフォームをどのようにインスタンス化しますか?
私は自分の WinForms デザイナーを開発しています。既存のカスタム フォーム タイプをロードできる必要があります。私が遭遇した問題の 1 つは、既定の ctor のないフォームです。私のコードは現在、既定の ctor を必要とするデザイナにフォームをロードする前にフォームをインスタンス化しています。
OTOH、VS2008はそのようなフォームをロードできます。実際にはフォームをインスタンス化しないと思います(この質問に記載されているように):デフォルトのctorでさえ実行されません。そして、それは本当に InitializeComponent() を実行しません。その関数にメッセージボックスを追加したところ、表示されません。
カスタムフォームタイプを動的に模倣し、関連すると思われる InitializeComponent のコードの一部のみを実行するように見えます。
VS デザイナーの仕組みに関する詳しい情報がどこにあるか知っている人はいますか?
ティア。
注:満足のいく答えが得られないこの関連する質問を見つけました
編集: 追加情報: Steve は非常に興味深い CodeDom を教えてくれました。私の問題は、デザイナーに読み込む必要がある型が、ソース コードとして利用できるのではなく、既にコンパイルされていることです。CodeDom デシリアライゼーションをコンパイル済みコードに適用する方法が見つかりません。
c# - Visual Studio 2008 WPF デザイナーがフォームをロードしない
Visual Studio 2008 で他の人 (元従業員) によって開発されたフォームを表示しようとしていますが、MainForm.xaml を見ようとすると次のエラーが発生し続けます (デザイナー ビューでの読み込みに失敗します)。
エラー タイプ 'NumericTextBox' のインスタンスを作成できませんでした。D:\MySolution\GUI\MainForm.xaml
私のソリューションは次のように構成されています(簡潔にするために短縮されています-エラーが発生するのはこの最後の行です):
私の MainForm.xaml は次のようになります。
そのエラーの原因は何ですか? すべて正常にコンパイルされますが、アプリケーションを実行するとクラッシュします。2つの問題が関連する問題である可能性があることを願っていました。
winforms - WinFormデザイナとコンテナ内のコントロールのサイズ変更時の適切なスナップライン
Visual Studio 2008 WinFormデザイナーを使用すると、コンテナー(フォーム、パネル、グループボックスなど)といくつかのコントロールが含まれます。
コンテナは、自動的にサイズ変更またはドッキングしないように設定されています。コントロールをコンテナーに配置するとき、スナップラインを使用してコントロールの配置に役立てることができます。
ただし、コンテナのサイズを含まれているコントロールの端に変更すると、スナップラインが表示されません...
コンテナーのサイズを変更するときに、デザイナーに含まれているコントロールのスナップラインを表示させる簡単な方法はありますか?
c# - ネイティブ .NET コントロールから派生したコントロールの ControlDesigners の動作をカスタマイズする
私の質問はこの質問に関連しています: カスタム Winform コントロールのベースライン スナップライン
ただし、私の場合、derives
TextBox ではなく TextBox から新しいコントロールを作成しましたcontaining
。カスタム ControlDesigner が必要ですが、自分で完全なデザイナーを作成するのではなく、TextBox のデザイナーの動作を変更したいと考えています。特に、いくつかのカスタム動詞を提供しながら、TextBox の SnapLines を返すことができるようにしたいと考えています。これを行う良い方法はありますか?
編集: 明確にするために、これは .NET 2.0 の Windows フォーム用です。