2

ピクセルの位置を指定して winform フォームにコントロールを配置する代わりに、html でフォームをレイアウトするのと同じようにレイアウトしたいと思います。これにより、スケーリングが向上します(大きなフォントなどの場合)。

xml でフォームを定義し、html のようにレイアウトできるレイアウト ライブラリを知っている人はいますか?

4

6 に答える 6

4

.NET フレームワークのTableLayoutPanelFlowLayoutPanelを確認しましたか? それはあなたが探しているものかもしれません。

于 2008-09-08T12:25:48.783 に答える
3

ええ、それはWPFと呼ばれます:)

真剣に、WinForms 2.0 には、場所とサイズを設定せずにコントロールを配置できる新しいパネル タイプがいくつかあります。FlowLayoutPanel と TableLayoutPanel です。

AutoSize プロパティも調べる必要があります。たとえば、ラベルの値が変更されたときのサイズ変更を処理します。また、ドッキングとアンカーも忘れないでください。

これらの概念を習得すれば、XML からコントロールに変換する小さなパーサーを作成することは、本当に必要な場合はそれほど難しくありません。

于 2008-09-08T12:32:30.437 に答える
2

これに最適なものがあるかどうかはわかりません。

MyXAML は、バイナリにフォームを埋め込むのではなく、XML にフォームを追加できるようにすることを数年前に開始しました。そのプロジェクトが死んでいるかどうかはわかりません。

WinForm には既にフロー レイアウト コントロールがあります

ただし、この種のことを適切に行いたい場合、唯一の答えは WPF に移行することだと思います。

于 2008-09-08T12:28:46.590 に答える
0

私はすでにMyXAMLのようなものを持っています-私の画面はすでにxmlファイルからロードされています。MyXAMLと同じ問題があります。それは、コントロールをピクセル位置で配置する必要があるのに対し、自動フローやテーブルなどを備えたhtmlのようなものが必要なことです。

TableLayoutPanelが私が探しているものかもしれないと思います。

于 2008-09-08T21:49:36.883 に答える
0

WinForms の代わりに Windows Presentation Foundation (WPF) の使用を検討することもできます。WPF には、スケーラブルな UI の定義に適した XML 宣言型マークアップ言語 (XAML) があります。

于 2008-09-08T12:29:25.700 に答える
0

私が知っている唯一のものは、LayoutControlと呼ばれるDevExpressのサードパーティです..

于 2008-12-11T17:51:42.177 に答える