C#で多くのコントロールを持つPanelの作り方

このQ&Aのポイント
  • C#でPanelを使用して多くのコントロールを配置する方法を説明します。
  • Panelの面積を10cm x 10cmと仮定し、100個のRadioボタンを配置する場合、Panelの下限に制約があるため、追加のコントロールを配置することができません。
  • いくつかの方法を試しましたがうまくいきませんでした。どのようにすれば遥か下までコントロールを配置できるのでしょうか?
回答を見る
  • ベストアンサー

C# 多くのコントロールを持つPanelの作り方?

FormにPanelを作ります Panelの面積を10cm×10cmと仮定します このPanelに100ケのRadio釦を貼り付けます ですからPanelが必要とする面積は相当なものになります 10ケ程度は上から下に順次貼り付けられますが、11ヶ目からは表示されているPanelの下限になってしまいPanelの枠内に入れられません ・Panelの下限を下にドラッグして下方向に延しましたがVisual Studio自体の画面デザインのサイズまでしか拡がりません ・AutoScrollをTrueにしてみましたが、FormデザインのPanel自体にはスクロールバーは表示されませんので、11ヶ目以降の貼付けスペースを見出せません どのようにしたら表示されているPanelの下限よりも遥か下までコントロールを貼り付けることが出来ますか? 色々と操作してみましたが分かりません? この操作方法をご存知でしたらお教え願います

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

フォームに貼り付けたパネル(Panel1)をコンテナにして Panel2を貼り付けてココにラジオボタンを貼り付ければいいのでは Panel1のAutoScrollをTrueにすれば Panel1の中で Panel2をスクロールできますよ

sato-may
質問者

お礼

ご指導まことにありがとうございました ドンピシャリ 一発OKで解決出来ました! ありがとうございました 今後も宜しくご指導お願い申し上げます

その他の回答 (1)

  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

すみませんが、ラジオボタンが100個も必要な理由を教えてください。 それだけの数からの択一ならリストボックスを使うなど他の方法を考えたほうがいいです。

sato-may
質問者

お礼

なるほど!  リストボックスか  その手も確かにある!!! でも択一ではないのです、複数選択可能指定の中からの選択なのです 最悪リストボックスを使用するように仕様を改めることも検討します ありがとうございました

関連するQ&A

  • C# Panel領域の下部に余白を設ける方法???

    手操作ではなくプログラムでPanelを作り、そのPanelに上から下に向かって100ヶのCheckBoxを加えました Panelのサイズはあまり大きくありませんので、100ヶ目のCheckBoxは当然スクロールしなければ見ることが出来ません 目いっぱいスクロールするとPanelの下枠と100ヶ目のCheckBoxの最下部が同じ所にあります すなわち100ヶ目のCheckBoxがPanelの下枠に乗っかっている状態であり、100ヶ目のCheckBoxとPanel下枠の間に余白がありません 見た目が悪いので、100ヶ目のCheckBoxの更に下にダミーのLabelを設け Label.Text="" で表示すると余白が出来ます ⇒ Label.Visibilty=false ではダメ でもこの方法ではプログラム的に誠にブザマです PanelのプロパティのScroll辺りの値を色々変えてみましたが上手くいきません Panelに加えたコントロールの下に余白を作る方法をご存知でしたらご指導お願い申し上げます

  • ボリュームのコントロールが効かなくなった

    XPのデスクトップ型で、ボリュームコントロールのウインドウは表示できるのですが、調整しようとしても勝手に下にスクロールして消音状態になってしまいます。その上まるで嫌がらせかのように画面中央下に緑色でデカデカとボリュームのゲージが表示されてるんです。 Min.llllllllllllllllllMax ←このような感じで シャットダウンしても直りません。液晶のボタンを操作しても無駄でした。コントロールパネルで調整しても分かりません。どうしたら直るでしょうか?ご回答お願いします。

  • C#でパネルに子パネルを上から降順追加したいです。

    図のように"追加ボタン"を押すと親パネル(panel1)に子パネル(panel2)を上から 追加する画面を作りました。(以下がソースです) private void button1_Click(object sender, EventArgs e) { int i = 0; foreach (Panel p in panel1.Controls) { i++; p.Top += 40; } Panel panel2 = new Panel(); createPanel(panel2, i);※子パネルのレイアウトを設定し、確認用の連番をセットしています panel1.Controls.Add(panel2); } 常に親パネルの最上段に子パネルを追加したいのですが、 スクロールバーで親パネルの下のほうで追加ボタンを押すと、 親パネルの表示されている最上段の位置に子パネルが追加されてしまいます。 スクロールバーで親パネルの最下部に移動していても、追加するときは親パネルの(0,0,)の位置に 子パネルを表示させるにはどのように実装したらよいでしょうか? メソッドcreatePanel(panel2, i)の中で、 子パネルのロケーションを0,0に設定してもダメでした。 以上、よろしくお願いいたします。

  • DMR操作パネルについて

    パソコンで、ネットで動画を観たり、ゲームをしていると、画面の右上にDMR操作パネルというものが表示され、その下(?)にあるクリックする場所が重なるため、クリックすることができません。 このパネルを消す(非表示)にすることはできますか?

  • コントロールパネル「ユーザアカウント」の「詳細」タブが出なくなった

    Windows XP Professional を使用しています。先日 Service Pack 3 を適用したところ、コントロールパネル「ユーザーアカウント」の「詳細」タブが出なくなってしまいました。(うろ覚えですが、ユーザーアカウント自体のデザインも変わったような気がします。コントロールパネルは「クラシック表示」にしてありますが、ユーザーアカウントの画面は「カテゴリー表示」をした時と同じになっています。以前は違ったと記憶しているのですが。。。) ファイル名を指定して実行で「rundll32 netplwiz.dll,UsersRunDll」を行なえば、「詳細」タブが現れるので、実用上は困らないのですが、どうもスッキリしません。 従来のように、コントロールパネルでユーザーアカウントを開いたら、いきなり詳細タブが現れるように戻す方法を御存じの方がおられましたら、ぜひ御教示下さい。 宜しくお願い致します。

  • Visual C#でのブラウザについて

    現在Visual C#でアプリケーションを作っており、そこにWebBrowserを入れようと考えています。ただ、スペースの問題でWebBrowser自体をあまり大きくできないので、WebBrowserで開くページ自体をWebBrowserのサイズに合わせて表示することはできますか?現在の状態ですと開くページのサイズが大きいとWebBrowserからハミ出る部分があまりに多く、スクロールが大変なので... よろしくお願いします。

  • スクロールバーの境界値は?

    C# AutoScrollPositionで表示させたすスクロールバーの境界値を取得する方法は? AutoScrollで自動でフォームにスクロールバーが表示されるようにしました。 上下方向のスクロールの上限(バーが一番上)下限(バーが一番下)値を取得するにはどうしたらいいでしょうか? バーが一番上になる時の値は、0ですよね? バーが一番下になる時の値は、どのようにして取得すればいいでしょうか? 指導よろしくお願いいたします

  • C# フォームを追加するとエラー

    C# 勉強中の者です。Visual Studio 2008 を使用しています。 既に一つのフォームで実行できているプロジェクトがあり、[プロジェクト]-[Windows フォームの追加]から追加してフォームを2つにしてみようと思いましたが、以下エラーが出てしまいます。 <エラー内容> ファイル内にデザインできるクラスがないため、このファイルのデザイナを表示できませんでした。ファイルの以下のクラスがデザイナで見つかりました: Form2 --- 基本クラス 'System.Object' をデザインできません。 <このエラーのヘルプ> Visual Studio 内のクラスが、画面上でデザインできるクラスから継承されていないため、ファイルのデザイナを開けません。 どうすればフォームを追加することができるのでしょうか? よろしくお願いします。

  • カレンダーコントロールとサイズ変更

    現在、タッチパネルモニタを使用したシステムを検討中で、日付を指定するのに月間予定表コントロールを考えています。(やはり指で操作するなら、カレンダーの方が操作しやすいと思いますので) その為、そのカレンダーコントロールを画面一杯に表示させたいのですが、可能でしょうか?出来るならば、助言をお願いします。 環境  Visual C++6.0  Windows XP Pro SP3 以上、よろしくお願いします。

  • コントロールパネルの画面 インターネットオプションなど開いたときの文字が欠けてる

    コントロールパネルの画面 インターネットオプションなど開いたときの文字が欠けてる かくれているところがあります どうしたら全部表示されるようにできますか? DPI設定は120%で大きくしてます これをもとの数値にするとなおりますが 文字などを大きくしたいのでDPI設定は120%で使いたいのですが 解像度は1280× 800 です デザイン フォントのサイズは大きサイズです 画面サイズは15.4インチです もうひとつの15インチのほうは 同じ設定でも全部きれいに読めます たとえば ドコモのデータリンクのソフトを開いたとき トップページの右上の機種名の下の日付・時間の文字が下半分欠けています そのほかネット上の画面で上から店名 住所 TEL FAX となっているところが一番下のFAXが切れて 上半分しか見えておらず 2と3 とか 8と0 とかが一緒に見え 区別できないような現象です