問題タブ [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.

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

winforms - Windows フォーム デザイナーがフォーム レイアウトを破壊する

今朝、Visual Studio の Windows フォーム デザイナーで奇妙な問題に遭遇しました。変更なしで約1か月間機能するフォームがあります。アプリケーションでは次のようになります。

フォームがどのように見えるかのスクリーンショット

(ここでの法的な影響については完全には確信が持てないため、テキストは判読できません)。

今日から、どうやら(昨日デザイナーでフォームを問題なく開いていたと思います)、デザイナーでは次のようになります。

Windows フォーム デザイナーでのフォームの外観のスクリーンショット

差分を見ると、すべてのコントロール (またはほぼすべてのコントロール - ラベルは影響を受けませんでしたが、AutoSize に関連している可能性があります) の幅は 311 ピクセルです。次のような行は、デザイナーが混乱した後、ファイル全体で一般的です。

その価値がどこから来ても。さらに、1 つのラベルが興味深いテキストを取得しました"潐瑲⼠倠獯瑩潩㩮攀瑵慲ⱬ"(生のバイトでは意味がありません)。

デザイナーでフォームを開かないと、悪いことは何も起こりません。ファイルがそのままの場合でもプロジェクトがビルドされ、プログラムを実行すると問題なく表示されます。ただし、デザイナーを開くと、デザイナーが生成したコードで前述の変更がトリガーされ、それらの変更はコンパイル時に保持されます (明らかに)。

同僚のマシンでは、これはまったく起こりません (ただし、VS をクラッシュさせずにデータセットを開くことはできないため、ここでの両方の設定は少し奇妙です ...)。

ここで何が起こっているのか真剣に考えています。何か案は?

ETA:サイズ変更が暴走すると、デザイナーでコントロールのサイズを変更できません。サイズを変更すると、コントロールのサイズが変更されたかのように視覚的なアーティファクトが発生するだけですが、チェック時に幅が 311 ピクセルのままです。

ETA 2:奇妙なことに: デザイナーを開き (破損を引き起こします。これまでのところ非常に良好です)、AnkhSVN で保留中の変更に入り、ファイルへのすべての変更を元に戻すと、破損も元に戻ります。フォームは、デザイナーでもあるべきように見えます。閉じて再度開くまで。

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

c# - 複雑なクラス宣言はフォーム デザイナーを混乱させますか?

次のように宣言されたクラスがあります。

テストのために手動で追加しましたが、最終的にはフォーム デザイナーに表示できるものが必要になります。フォーム デザイナーはこれを気に入らず、次のように述べています。

興味深いことに、同様の警告も表示されますが、変数の宣言で使用したジェネリック型が含まれています。警告は次のとおりです。

私の単純な Form1 クラスの宣言は次のとおりです。

(FooNodeType は実際には、まだ使用されていない 1 つの補助プロパティを持つ Label の単なるサブクラスです。IFooNode を実装しています)。

だから私の質問...このタイプのセットアップでは、どうすればFooをフォームデザイナーに表示させることができますか、または少なくともFooが合法であることを認めさせることができますか? これを処理できる Designer 属性はありますか? Foo コントロールが空のボックスとして表示されるかどうかは、まったく気にしません。

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

winforms - WinFormsの継承チェーンを作成することは私を悩ませますか?

基本フォームMain1があり、コントロールを追加したり、既存のコントロールのサイズ/場所を変更したりするなど、少し変更する必要があるとします。変更する必要のある基本コントロールは、デザイナーで「保護」に設定しました。したがって、Main1から派生した別のフォームMain2があります。次に、別のフォームMain3があります。これには、さらに多くの追加/変更がありますが、2番目のフォームの追加が必要です。などなど。私の継承チェーンは次のようになります:MainX:Main(X-1):...:Main2:Main1

これはうまく機能し、コントロールを移動したりサイズ変更したりするときにデザイナーのサポートを受けることができますが、特にチェーンがこれほど大きい場合は、継承全般に常に注意を払っています。

これは後で支払いますか?

0 投票する
10 に答える
29869 参照

c# - Visual Studio 2008 Windowsフォームデザイナに抽象基本クラスを実装するフォームをレンダリングさせるにはどうすればよいですか?

Windowsフォームで継承されたコントロールに問題があり、アドバイスが必要です。

リスト内のアイテム(パネルで作成された自作のGUIリスト)の基本クラスと、リストに追加できるデータの種類ごとの継承されたコントロールを使用します。

問題はありませんでしたが、ベースコントロールを抽象クラスにするのが正しいことがわかりました。これは、メソッドが含まれているため、継承されたすべてのコントロールに実装する必要があり、コード内のコードから呼び出されます。基本制御。ただし、基本クラスに実装してはならず、実装することはできません。

ベースコントロールを抽象としてマークすると、Visual Studio2008Designerはウィンドウの読み込みを拒否します。

ベースコントロールを抽象化してDesignerを動作させる方法はありますか?

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

c# - Forms Designer でカスタム プロパティにアクセスするための属性

ロッドのリストを持つコントロールがあります。Rods にはいくつかのパブリック プロパティがあります。

Rod をホストするコントロールでは、リストは次のように宣言されます。

RodsHost コントロールを選択して [Rods] プロパティ ページをクリックし、フォーム デザイナー GUI を使用してそのコントロールの Rods を編集できるようにしたいと考えています。現在、ロッドをリストに追加することはできますが、ロッドのプロパティ (Angle、MainColour など...) を編集することはできません。Rods クラスに属性[DesignTimeVisible(true)]を適用しようとしましたが、うまくいかないようでした。Designer 属性を使用する必要があるのではないかと考えましたが、ここで必要な Designer クラスがわかりません。誰か提案がありますか?

0 投票する
1 に答える
7076 参照

c# - [プロパティ]ウィンドウで複数行の文字列プロパティを許可する

テキストボックスのテキストを設定するための文字列プロパティを備えたWindowsフォームユーザーコントロールがあります。この文字列複数行にすることができます。

textプロパティを持つ一部のコントロールでは、単一行のプロパティtextboxに強制的に入力する代わりに、複数行を入力できる小さなポップアップが表示されることに気付きました。(実際のところ、WindowsフォームのTextboxコントロールでは、Textプロパティでこれを使用できます。)

設計したプロパティのプロパティウィンドウでこの機能を有効にするにはどうすればよいですか?

以下は私のアプリの実際のコードではありませんが、そのようなプロパティがどのように定義されるかの例です

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

c# - Visual Studio: 属性を使用してビュー コードを既定にする

Designer の代わりにコードで Windows フォーム コントロールを開くように VS 2008を構成する方法を知っています。しかし、目的のコントロールを装飾できる属性を使用してこれを行う方法を見たと思います。その名前を知っている人はいますか?これは、一部のコントロールをデザイナーで開き、一部を C# コード ビューで開く場合に特に便利です。

0 投票する
1 に答える
15728 参照

visual-studio-2008 - Windowsフォームデザイナでコントロールをフォームの中央に揃えます

これが私を壁に押し上げてきたものです。Windowsフォームデザイナに、作業中のフォームの水平方向と垂直方向の中心にピクセルスナップを提供させるにはどうすればよいですか。

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

visual-studio - 異なる解像度での Visual Studio Windows フォーム プレビュー?

私は 1680 x 1050 の解像度で Visual Studio を実行しています。ただし、当社のお客様は通常 1024 x 768 を使用しています。エディターをネイティブの解像度のままにして、フォーム デザイナーを別の解像度で表示する方法はありますか? ありがとう!

オースティン

0 投票する
1 に答える
680 参照

.net - 複合ユーザー コントロールが所有する子コントロールのデザイン時の移動

分割パネルのパネルのように、(この問題とは関係のないさまざまな理由で) デザイナーに公開されている Windows フォーム ユーザー コントロールがあります。コントロールをドラッグすることを除いて、ほとんどすべてがうまく機能します。子コントロールはユーザー コントロールによって作成され、新しい子を受け入れません。その意図は、定義済みの子のプロパティを編集できるようにすることだけです。

コントロールでは子コントロールを設計できるため、デザイナーで子コントロールを選択することもできます (これは良いことであり、これを変更したくありません)。ただし、個別に移動することはできません。

私がやりたいことは、デザイナーで子コントロールをドラッグすると、ドラッグによって実際に親が移動することです。

私はコントロール デザイナーに関するドキュメントをざっと読んでいますが、単純で明白なものは何も表示されませんでした。