問題タブ [tablelayoutpanel]

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 投票する
2 に答える
3518 参照

c# - C# TableLayoutPanel の塗りつぶし

TableLayoutPanel では、デフォルトで、行または列の最後の要素が残りのスペースを占有します。最後から 2 番目の要素またはその他の要素ができるだけ多くのスペースを占有し、とりわけ、最後の要素が必要なだけのスペースしか占有しないレイアウトを実現するにはどうすればよいですか?

0 投票する
0 に答える
1503 参照

c# - MDI 子フォームは TableLayoutPanel コントロールの背後に表示されます

画面サイズに合わせたボーダレス MDI フォーム ウィッチがあり、その上に 2 行の中央固定サイズの TableLayoutPanel コントロールを 1 つ配置しました。一番上の行 (10%) に、水平の RibbonBar コントロールを一番下の行 (90%) に配置しました。 ) 2 つのパネルを持つ分割コンテナーを配置しました。左側のパネルは垂直方向の RibbonBar コントロールをホストするために使用され、右側は子フォームを表示するために残されています。クリックして必要な子フォームを表示すると、TabelLayoutPanel の背後に読み込まれ、その一部しか表示されず、前面に表示できません。

親と子の両方の FormBorderstyle プロパティ、および子の TopMost プロパティを変更しようとしました。問題は同じままです。

誰かがこの問題についてアイデアを持っていますか、それとも The MDI Form をレイアウトするためのより良い解決策がありますか?

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

c# - C# の tablelayoutpanel でスクロールを有効にできません

プロジェクトで tablelayout パネルを使用し、その中にアイテムを表示しています。しかし、それはスクロール可能ではありません。自動スクロール、最大サイズ、およびスクロールに関連すると思われるその他すべてを試しました。

どんな種類の助けも大歓迎です、どうもありがとう、plz help

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

c# - TableLayoutPanel内に埋め込むために動的に作成されるコントロールのColumnプロパティとRowプロパティをプログラムで設定するにはどうすればよいですか?

LabelやTextBoxなどのコントロールをTableLayoutPanelにドロップすると、(もちろん、他の多くの中で)次のプロパティがあります。

...ただし、これらのコントロールには通常、これらのプロパティはありません(TLPにドロップされないIOW、ラベル、およびテキストボックスにはこれらのプロパティがありません)。

これらのプロパティに(TLP内に埋め込みたいコントロールに)プログラムで値を割り当てるにはどうすればよいですか?

これは、ラベルの既存のコードです。

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

c# - 12 X 8.33 が約 105 に等しいと思われるのはなぜですか?

私の TableLayoutPanel では、12 行 (およびいくつかの列) を動的に追加しています。TableLayoutPanel の Rows コレクションを Autosize に設定すると、12 行目が生成されますが、表示されません。各行が 8.33% になるようにパーセンテージに変更しました (実際には 8 に設定し、自動的に 8.33 に変更されました)。

これは肉眼では完璧なはずですが (99.99999999%)、12 行目に他の行より多くのスペースがあり、16 列目も同じであるため、TableLayoutPanel の下部と右側に「デッド スペース」があり、ラベル最終行にあるのは、隣の列にある textBoxes と整列していません。

誰かが実際のコードに興味がある場合:

アップデート

サイズと場所を微調整することで、すべて見栄えを良くすることができますが、今では、周りにクッションを置いて生活するか、フォームと他のすべてのコントロールのサイズ、またはそれらの多くを変更する必要があります. したがって、パーセンテージが期待どおりに機能しなかったのは、まだ少し不規則だと思います。私は知っています、私は知っています:WPF。しかし、それは現在の選択肢ではありません。

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

c# - TableLayoutPanelをパーセンテージで割ったときに、そのサイズのすべてを使用しないのはなぜですか?

TableLayoutPanelにコントロールを動的に追加しています。

12行32列です。

列の幅を分割して、ラベルのあるものはTextBoxのあるものの2倍の幅になり、パーセンテージの合計は100になります。

行ごとに24個のテキストボックスと行ごとに8個のラベルがあるため、これは100%(40%のラベル、60%のtextBox)に相当します。

ただし、ここに表示されているように、最後の列はスペースホッグです。

http://warbler.posterous.com/the-32-column-is-wider-than-the-rest

そして、ラベルが自分自身全体を表示するためのスペースが必要です。表示されているように、ラベルの幅は実際には4文字ではなく5文字( "00:00" ... "23:45")です。

経験的証拠(以前の試行錯誤)に基づいて、TLPの幅を縮小して最後の列をスキニーにすることはできましたが、ラベルセルがスキニーすぎるという問題は解決しません。

これは、TLPのコントロールを叩く方法です(列コレクションのプロパティページを使用して、設計時に列幅のパーセンテージを設定しました)

アップデート

おそらく問題は、TLPの幅が32で正確に割り切れないことだと思いました(それは619でした)。それで640に広げましたが、同じ問題が残っています。

更新2

それを機能させるには、パーセンテージ*ではなく列の絶対サイズを使用し、ラベル保持列の幅を35に増やす必要がありました(TLP幅640のtextBox保持列には15だけが残ります) 。

  • WPFは時々クマになることがありますが(ウィニーよりもコディアックのように)、解像度や画面サイズが異なる場合など、絶対サイズがすべてダラスに行くことを心配するこのような状況では、確実に請求が満たされます。
0 投票する
2 に答える
10497 参照

c# - SuspendLayout/ResumeLayout は無価値ですか、それとも間違っていますか?

ラベルとテキスト ボックスを動的に入力する TableLayoutPanels をホストする 2 つのタブ ページがあります。最初のものは 96 個のラベルと 96 個のテキスト ボックスを取得し、そのちらつきは許容範囲内か許容範囲内なので、わざわざ SuspendLayout/ResumeLayout のペアを追加しませんでした。

ただし、2 番目のものは 96 個のラベルと 288 個のテキストボックスを取得し、そのペイント/ちらつきは耐えられません。IOW、192 のコントロールは問題ないようですが、384 は明らかにそうではありません。

コントロールを動的に作成する前に SuspendLayout を呼び出してから、finally ブロックで ResumeLayout を呼び出していましたが、それらを削除しました。最初の tabPage/TLP と同様に、ちらつきは許容範囲内です。

この加算による減算が機能するのはなぜですか?

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

c# - ボタンC#をクリックした後、tablelayoutpanelのコンテンツを印刷します

「ExternalExceptionは処理されません。GDI+で一般的なエラーが発生しました」というエラーがあります。"printImage.Save( "C:/image.jpg",System.Drawing.Imaging.ImageFormat.Jpeg)「_

手伝ってくれてありがとう!

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

c# - DataGridViewに交互の垂直列を設定することは可能ですか?

ハイブリッドの「ハードコードされた」文字列とデータベースからのデータになるデータを表示する必要があります。具体的には、すべての偶数列にはデータベースからのものではない文字列値が含まれ、すべての奇数列にはデータが含まれます。たとえば、列1にはデータベースの値1から12が含まれるため、最初の2つの列は次のようになります(同じパターンが数回繰り返されます)。

これは可能ですか?

現在、これにはTableLayoutPanelを使用していますが、そのコーディングは少しきれいです(Steely Danリファレンスではありません)。

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

c# - TableLayoutPanel最初の列の周囲に境界線がありませんか?

次のように定義/構築されたTableLayoutPanelを拡張するクラスがあります。

私のテーブルが描画されると、5つの列すべての周りに境界線が表示されます(上記のCellBorderStyleを設定するコードを指定すると予想されます)。

最初の列の周りに境界線が描画されないようにする方法はありますか?

CellPaintコールバックを追加できることは知っています。

このコールバックでは、特定の列の境界線の色を変更するなどの操作を実行できます。

しかし、どのようにして「いいえ」の長方形を描くのでしょうか。

色をColor.Emptyに設定しようとしましたが、うまくいきませんでした。