問題タブ [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# - tablelayoutpanelの一部のセルの周囲に境界線を描画します
理由は聞かないでください。ただし、の特定のセルの周囲に境界線を引く必要がありますTableLayoutPanel
。
たとえば、簡単にするために、1行5列があるとしますTableLayoutPanel
。各セルにはボタンがあります。最初の3つのセルの周りにボックスを描画し、次に最後の2つのセルの周りに別のボックスを描画したいと思います。つまり、合計2つのボックスです。
それを達成する方法について何か提案はありますか?
ありがとう。
c# - 動的 UI 作成のヒント
UI の外観を決定する xml ファイル情報から読み込む UI を作成する必要があります。簡単に言えば、xml ファイルは、グリッドのようなインターフェイス内の一連のボタンの位置を決定します。テーブルレイアウトパネルの可変数(xmlファイルで指定された情報に応じて)を持つ単一のパネルコンテナで構築できると考えています。各テーブル レイアウト パネルには、可変数の行/列があります (xml ファイルで指定された情報にも依存します)。
コントロールの作成とマッピングは正常に機能していますが、すべてのサイズを適切に設定することは引き続き課題です。
動的インターフェイスのマッピングに適した他のコントロールはありますか?
ヒント/トリック/落とし穴はありますか?
c# - スクロールバーTableLayoutPanel c#
内部にいくつかの TableLayoutPanels を持つ TableLayoutPanel があります。量は動的に変化し、ほとんどの場合、多すぎてフォーム内に収まりません。コンポーネント全体を表示できるように、スクロール バーが必要です。
メイン パネルの autoscroll プロパティを true に設定してドッキングし、最大サイズを設定しようとしました。代わりに、コントローラーが行うことは、すべてのパネルをフォーム内に収めようとするため、パネルをスクロールするスクロール バーを作成する代わりに、内部コンポーネントのサイズを変更し、それらをすべてまとめて圧縮することです。
私が間違っているかもしれないことを知っていますか?
ありがとう。
ホセ
PS: VS 2010 を使用しています
d - D フォーム ライブラリ TableLayoutPanel?
D Forms Libraryを使用しようとするたびに、 D Forms Libraryがないという事実に出くわしますTableLayoutPanel
。これにより、優れた GUI を作成することが事実上不可能になります。
TableLayoutPanel
DFL の実装はありますか?
人々は通常、このライブラリなしでどのように使用しますか?
編集:
DFL を使用する別のプログラムへのリンクは、回答の大きなボーナスになります。:)
c# - c#.netのTableLayoutPanelでちらつきを回避する方法
出席マーキングの目的でTableLayoutPanelを使用しています。このTableLayoutPanel内にコントロール(パネルとラベル)を追加し、それらのイベントを作成しました。いくつかの条件では、すべてのコントロールをクリアし、TableLayoutPanelの異なる位置に同じコントロールをバインドしました。コントロールを再バインドしている間、TableLayoutPanelがちらつき、初期化が遅すぎます。
c# - C# Problem removing textbox from tableLayoutPanel
Hello I'm currently working on a windows from where I need to be able to add and remove a number of textboxes (and a lable) with a button click. I have to have it set out within a tableLayoutPanel and Once "Add" is clicked a Label and 5 Text boxes must appear on the same row, and then when I click "Remove" they must dissapear, Hiding won't work as Data needs to be taken from them at a later stage but thats not an issue atm.
The problem is with the removal (I can add them fine as you'll see below) I know whats happening and can guess as to why but I need to find an alternate solution >.<
#xA;All That Happens when I try to remove is the Last added Row of label/textboxes is removed, and then only the rowindex/count decrease on any clocks afterwards.
Any Ideas how to get this to work, I'll accept having to change it almost completely but as I said It must be done in the TableLayoutPanel >.<
Cheers, Jmaru7
c# - テーブルのレイアウトと移動/非表示のコントロール
テーブル レイアウト コントロールを含むフォームがあります。テーブル レイアウトには、3 つの列といくつかの行があります。
最初の列にはラベルが含まれ、2 番目の列はテキストボックス、コンボボックス、または日時ピッカーのいずれかです。3 番目の列には、ユーザーが入力した情報にエラーが含まれている場合にオンまたはオフに切り替わる画像が含まれています。これは、間違って入力したフィールドや見逃したフィールドを確認できるようにするためです。
5 行目には、ユーザーが入力するトランザクションの種類を選択できるコンボボックスが含まれています。ユーザーの選択内容によっては、コントロールを再配置する必要がある場合があります。
スクリーンショットを使用した例を示しましょう。
http://i.stack.imgur.com/OZmFH.png
これは実行中のフォームの標準バージョンであり、ユーザーはトランザクション タイプを選択していません。
ここで、ユーザーがローンの支払いを選択したとします。フォームは次のように再配置されます。
http://i.stack.imgur.com/j76wG.png
説明文と総額が数行下に移動し、新しいボックスが表示されて、ユーザーがローンと支払い回数を選択できるようになっていることがわかります。
選択した取引タイプに応じて、3 つの異なるレイアウトを表示できます。
現時点では、Transaction Type コンボボックスの SelectedIndexChanged イベントをチェックしてこれを行い、メソッドを呼び出してビューをセットアップします。
これを達成するための最良の方法は何ですか? 現在、それを行うコードがありますが、非常に面倒です。
テーブル レイアウト パネル以外の何かを見る必要がありますか?
このコードは、不要なコントロールをテーブルの一番下に移動し、必要なコントロールを上に移動することで機能します。そうすれば、テーブルに隙間がなくなります。たとえば、ローン コンボボックスの可視性を単にオンまたはオフにしたくはありません。トランザクション タイプと 2 つの行の説明の間にギャップが生じるからです。とにかくコンパクトにしたい。
現在のシステムの唯一の問題は、下部に非表示のコントロールを含む空の行があることです。また、行を追加するのも困難です。移動を処理するすべてのコードを変更しなければならないからです。
ここまで読んでくれてありがとう。
>ふぅ<
ありがとう
トグル コントロール メソッドはリストされていません。基本的に、可視性を必要としないコントロールのオン/オフを切り替えます。
.net - 親コントロールの有効化のオーバーライド
WinForms では、親コントロールのEnabled
プロパティを設定すると、すべての子コントロールがそれに続きます。
ただし、(親の状態に関係なく) 常に 1 つの子コントロールを常に有効にできるようにしたいと考えています。
私の例では、テーブル レイアウト パネルに一連のコントロールがあり、その有効性はチェックボックス (たまたま子コントロール) のチェック状態にバインドされています。
これは可能ですか?
すべての兄弟コントロールにバインディングを追加したくありません。
おそらく、バインディングをサポートする非視覚的なセカンダリ グループ コンテナー「コントロール」/コンポーネントが周囲にあるのでしょうか。
c# - TableLayoutPanel GetControlFromPosition は非表示のコントロールを取得しません。特定の位置にある非表示のコントロールにどのようにアクセスしますか?
を使用してTableLayoutPanel
おり、 の特定の位置でコントロールを取得したいと考えていTableLayoutPanel
ます。の行と列を反復処理したいのですTableLayoutPanel
が、特定の行と列に単一のコントロールが必要な場合でも、この質問は同様に適用されます。
残念ながらGetControlFromPosition(int column, int row)
、表示されているコントロールのみを取得します (つまり、Visible プロパティが True に設定されています)。表示されていない特定の位置にあるコントロールにアクセスしてから表示したい場合があるため、これは私にとっては良くありません。
コレクションを繰り返し処理し、必要な位置が見つかるまでorTableLayoutPanel.Controls
を使用して各コントロールの位置を取得する必要がありました。( MSのドキュメントが貧弱であるため、とメソッド
の違いはわかりませんが、その質問は個別に尋ねます)。GetPositionFromControl(Control control)
GetCellPosition(Control control)
GetPositionFromControl
GetCellPosition
これを行うためのより簡単でクリーンな方法はありますか?