0

elementHost コントロールを使用して、WinForms で WPF コントロールをホストしています。elementHost (高さ) のサイズを元の位置よりも大きく変更しようとすると、内部の子コントロールが中央に配置され、その周りに黒い境界線が表示されます。ホスト コントロールに合わせて子のサイズを変更しようとすると、まだ「中央に配置」され、子の一部が切り取られて収まりません。

フォームが大きくなるようにサイズ変更されたときの私のホストされたコントロール。

これが私のサイズ変更コードです(サイズ変更イベントハンドラーの形式です):

elementHost1.Height = ClientSize.Height - h;
elementHost1.Width = ClientSize.Width - w;
(elementHost1.Child as WPFCodeBox).textEditor.Height = ClientSize.Height - h;
(elementHost1.Child as WPFCodeBox).textEditor.Width = ClientSize.Width - w;
(elementHost1.Child as WPFCodeBox).Border.Width = ClientSize.Width - w;
(elementHost1.Child as WPFCodeBox).Border.Height = ClientSize.Height - h;

Where h is the distance from the bottom of the form to the bottom of the element host
same for w but in width.

助けてくれてありがとう!

4

1 に答える 1

1

以前、要素ホストでデザイナーを埋めてから、フォーム コードのサイズを変更する必要があると言いましたが、それで問題が解決したわけではありませんでした。私の負荷イベントの 1 つで、要素ホストの子プロパティの高さを値に設定していましたが、明らかにそれが壊れています。

于 2012-03-14T22:01:20.930 に答える