問題タブ [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.
c# - コントロールのドッキングとスクロールバーがうまく機能するようにする
自然に収まるよりも多くの垂直画面スペースが必要な場合があるパネルがあるため、垂直方向にスクロールできる必要があります。したがって、すべて AutoScroll に設定されています。
コントロールは TableLayoutPanel 内に含まれており、ドッキングするように設定されているため、幅を一致するようにサイズ変更する必要があります。ただし、コントロールがスクロールバーをトリガーすると、違反しているコントロールに最小幅の制約がないにもかかわらず、常に水平スクロールバーが作成されます。ドックコマンドを尊重し、新しい幅に合わせてコントロールを再描画するのではなく、以前の幅に基づいて水平スクロールバーを作成しています。
これを回避するより良い方法はありますか?
c# - TableLayoutPanelはイベントへの応答が非常に遅い
私のアプリケーションでは、多くのコントロール(ラベル、テキストボックス、domainupdown)を適切な順序で配置する必要がありました。だから私は先に進んで、いくつかのネストされたを使用しましたTableLayoutPanel
。現在の問題は、このフォームがほとんどのイベント(サイズ変更、最大化、最小化など)に非常に遅く応答することです。テーブル内のコントロールがサイズ変更され、新しいサイズのフォームに再描画されるまで、実際には最大5秒かかります。
今、目に指を入れています!このフォームが私の自宅のPC(i7 @ 4GHzと優れたグラフィックカード)でそれほど遅い場合、仕事中の古いP4コンピューターで明日何をしますか?
私は以下のコードを使おうとさえしましたが、それがそれ以上遅くならないのであれば、それは絶対に何もしません!
tablelayoutpanelをより高速に動作させるための秘訣があるかどうか、または約100個のコントロールを適切に配置するためのより良いアプローチを知っているかどうかを教えてください。
c# - テーブルレイアウトで2つのセルを結合する方法
2つの行と2つの列があります。両方のセルの最後の列を1つにマージします。要件により、他のデザインオプションを使用しないということは、最初のテーブルレイアウトに2つの行がある2つのテーブルレイアウトを意味します。C#でWinformsを使用しています。
vb.net - TableLayoutPanelでコントロールを移動する際の問題
私が構築しているwinFormの場合、任意の数のテキストボックスとボックスを追加または削除するための2つのボタン+および-を持つTableLayoutPanelを使用しています。+ボタンと-ボタンは、ユーザーが次のようにフォーカスしたテキストボックスのすぐ下に表示されます。
- (テキストボックス)
- (フォーカスのあるテキストボックス)
- (マイナスボタン)
- (プラスボタン)
- (テキストボックス)
- (テキストボックス)
- (テキストボックス)
ユーザーが別のボックスをクリックすると、実行時に+ボタンと-ボタンが適切に移動するはずです。.GetControlFromPosition
しばらくの間、 andコマンドを使用してテキストボックスを移動しようとしましたが.GetPositionFromControl
、ボックスが移動しないか、意図した場所とは異なる場所に移動するため、これは機能しないようです。この問題を解決するための最善の方法は何ですか?
c# - TableLayoutPanelを使用した列サイズの問題
私は次のコードを持っています:
私の問題は、アプリケーションを実行しても何も表示されないことです。次のように、最後の行を最初の列に表示するように変更すると、次のようになります。
次に、最初の列に問題なく表示されます。また、ColumnStyle
定義をSizeType.Percentage
の代わりに変更するとAbsolute
、それも問題なく機能しますが、パーセンテージは必要ありません。左側に100ピクセルの固定列、右側に50ピクセルの固定列が必要です。
誰かが私をこれについて正しい方向に向けることができますか?
winforms - コードvb.netを実行しているときにargumentOutOfRangeExceptionsを取得し続ける
私はこの問題で実行を続け、テーブルを生成するforステートメントから飛び出します。3時間の大部分でコードを注いでいますが、何が問題になっているのかわからないので、別のペアが必要だと思います目の。
Shared Function DrawGrid() As TableLayoutPanel
Dim dayNames As New ArrayList
dayNames.Add("Monday")
dayNames.Add("Tuesday")
dayNames.Add("Wednesday")
dayNames.Add("Thursday")
dayNames.Add("Friday")
dayNames.Add("Saturday")
dayNames.Add("Sunday")
Dim hour As Integer = 8
Dim minute As Integer = 0
Dim timeType As String = "AM"
Dim dayLength As Integer = 12
Dim timetable As New TableLayoutPanel
timetable.CellBorderStyle = TableLayoutPanelCellBorderStyle.Inset
End Function
c# - デザイナーで TableLayoutPanel の列サイズが変わり続ける
ユーザー コントロールに tableLayoutPanel を追加しました。
列のサイズ設定は次のとおりです。
私が理解しているように、絶対値は常に正しいサイズのままで、列1が残りのスペースを占有する必要があります。
最初にコントロールを作成したときは、すべて問題ないように見えます。プログラムの他の領域のコーディングに戻りますが、問題はありません。ある時点で、tableLayoutPanel があるデザイナーに戻り、4 番目の列が以前よりも大きくなります。そのため、列と行のスタイル エディターを開いて、列のサイズを 25 に戻す必要があります。
これらの設定を固定するにはどうすればよいですか? それは私を夢中にさせています!
要求されたとおり、ここに私のデザイナーコードがあります。
c# - ボタン イベントを含む Visual Studio 2010 TableLayoutPanel
Visual Studio 2010 のデザイナー モードで TableLayoutPanel (たとえば、8x8 行 x 列) を作成し、この「マトリックス」の各フィールドにボタンを配置しました。イベントを一元的に処理する方法はありますか? TableLayoutPanel に TabIndexChanged があることがわかりましたが、これが役立つかどうかはわかりません。
これが可能かどうかを調べようとしてい
ます.2番目のボタンをクリックして、クリックしたボタンに関する情報を取得し、アイコンやテキストなどのプロパティの一部を変更できるようにします。
tablelayoutpanel を「マトリックス」または「配列」として理解し、次のように操作したいという考えを想像してみましょう。
それは可能ですか?はいの場合、どのように?
どうも
c# - AutoScaleMode を変更しますか、それとも FlowLayoutPanel から TableLayoutPanel に変更しますか?
私の FlowLayoutPanel のコントロールは、私のマシンでは完璧に見えますが、別のマシンではすべておかしくなっています (これは「ずれている」という技術用語です)。私のはXPで、彼はWindows 7ですが、それが不一致の理由なのか、それとも画面解像度なのか、それとも何か他のものなのかはわかりません。
FlowLayoutPanel は非常に扱いにくい/細かいことに気付きました。設計時に BorderStyle を変更しても、コントロールが再配置されて、互いに整列しなくなる可能性があります。
StackOverflow の記事で、(フォームの) AutoScaleMode プロパティを変更する提案を見ましたが、ポスターは何に (または何から; デフォルトのプロパティ値は "Font" だと思います) を指定しませんでした。
FlowLayoutPanel から TableLayoutPanel に切り替えると、DPI 設定間または問題が何であれ、より一貫したビジュアル エクスペリエンスが提供されますか?
ところで: 現時点では、WPF はオプションではありません。
c# - TableLayoutPanel 等間隔のセル
TablePanelLayout の列を等間隔に配置しようとしています。一部の数値では機能するようですが、他の数値では機能しないようです。
2、4、5、8、および 10 はすべて正常に機能しますが、3、6、7、および 9 は機能しません。最後のセルは常に、残りのセルよりわずかに大きくまたは小さくなります。
float の精度には限界があるようです。しかし、100 / 6 = 16.66666... で、小数点以下 2 桁しか表示されません。
100 に割ると繰り返し数になるものはすべて機能しません。他のスレッドで見た Format > Horizontal/Vertical Spacing > Make Equal を使用してみましたが、違いはありません。
各セルには、SizeMode が Zoom に設定された PictureBox が含まれているため、特に顕著です。したがって、1 つの画像は明らかに他の画像と同じサイズではありません。
それらが完全に均等であることを確認するための他のトリックはありますか? フォーム全体がサイズ変更可能であるため、妥当なスケールで機能する必要があります。すべてが 4 辺すべてでアンカーに設定され、マージンとパディングはすべて 0 です。
アイデアが尽きた…